String –> InputStream

InputStrem is = new ByteArrayInputStream(str.getBytes());

ByteArrayInputStream stream
= new ByteArrayInputStream(str.getBytes());

InputStream–>String

inputStream input;

StringBuffer out
= new StringBuffer();
byte[] b = new byte[4096];
for (int n; (n = input.read(b)) != -1;) {
out.append(
new String(b, 0, n));
}
out.toString();

or

               InputStream in ;        
BufferedReader br
= null;
try {
br
= new BufferedReader(new InputStreamReader(in));
}
catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
}

StringBuffer sb
= new StringBuffer();
String tmp;
try {
while ((tmp = br.readLine()) != null) {
sb.append(tmp
+ "\n");
}
br.close();
in.close();
}
catch (IOException e) {
e.printStackTrace();
}
return sb.toString();

Reader –>String

BufferedReader in = new BufferedReader(new InputStreamReader(is));
StringBuffer buffer
= new StringBuffer();
String line
= " ";
while ((line = in.readLine()) != null){
buffer.append(line);
}
return buffer.toString();

String–>Reader

Reader reader = null;
BufferedReader r
= new BufferedReader(reader);
StringBuilder b
= new StringBuilder();
String line;
while((line=r.readLine())!=null) {
b.append(line);
b.append(“\r\n”);
}
b.toString();

FileUtils

View Code
public class FileUtils {
private String SDPATH;

private int FILESIZE = 4 * 1024;

public String getSDPATH() {
return SDPATH;
}

public FileUtils() {
// 得到当前外部存储设备的目录( /SDCARD )
SDPATH = Environment.getExternalStorageDirectory() + "/";
}

/**
* 在SD卡上创建文件
*
*
@param fileName
*
@return
*
@throws IOException
*/
public File createSDFile(String fileName) throws IOException {
File file
= new File(SDPATH + fileName);
file.createNewFile();
return file;
}

/**
* 在SD卡上创建目录
*
*
@param dirName
*
@return
*/
public File createSDDir(String dirName) {
File dir
= new File(SDPATH + dirName);
dir.mkdir();
return dir;
}

/**
* 判断SD卡上的文件夹是否存在
*
*
@param fileName
*
@return
*/
public boolean isFileExist(String fileName) {
File file
= new File(SDPATH + fileName);
return file.exists();
}

/**
* 将一个InputStream里面的数据写入到SD卡中
*
*
@param path
*
@param fileName
*
@param input
*
@return
*/
public File write2SDFromInput(String path, String fileName,
InputStream input) {
File file
= null;
OutputStream output
= null;
try {
createSDDir(path);
file
= createSDFile(path + fileName);
output
= new FileOutputStream(file);
byte[] buffer = new byte[FILESIZE];
while ((input.read(buffer)) != -1) {
output.write(buffer);
}
output.flush();
}
catch (Exception e) {
e.printStackTrace();
}
finally {
try {
output.close();
}
catch (IOException e) {
e.printStackTrace();
}
}
return file;
}

/**
* 在sd卡中读出文本文件 返回String * strFullPath 读取文件的完整路径
*/
public String ReadSDFiled(String strFullPath) {

File file
= new File(SDPATH + strFullPath);
InputStream in
= null;
try {
in
= new BufferedInputStream(new FileInputStream(file));
}
catch (FileNotFoundException e3) {
e3.printStackTrace();
}

BufferedReader br
= null;
try {
/* 转换编码 */
br
= new BufferedReader(new InputStreamReader(in, "gb2312"));
/* 不转换编码 */
// br = new BufferedReader(new InputStreamReader(in));
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
}

StringBuffer sb
= new StringBuffer();
String tmp;
try {
while ((tmp = br.readLine()) != null) {
sb.append(tmp
+ "\n");
}
br.close();
in.close();
}
catch (IOException e) {
e.printStackTrace();
}
return sb.toString();
}

}
posted on 2011-08-24 16:05  QZB  阅读(1645)  评论(0编辑  收藏  举报