您的位置:首页 > 编程语言 > Java开发

Java IO 操作相关记录

2013-02-04 11:19 357 查看
//读文件 BufferedReader
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(new File("fileUrl"))));
String tempStr = "";
while((tempStr = br.readLine())!=null){
System.out.println(tempStr);
}
//写文件 PrintWriter
PrintWriter pw = new PrintWriter(new File("fileUrl"));
pw.println("每一次输出一行到文件");
//写文件 BufferedWriter
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(new File("fileUrl"))));
bw.write("");

//一次读取文件所有内容
File file = new File("filePath");
Long l = file.length();
byte[] fc = new byte[l.intValue()];
FileInputStream fis = new FileInputStream(file);
fis.read(fc);
fis.close();
String str = new String(fc,"UTF-8");

Java 文件和byte数组转换

public class T3 {

public static void main(String[] args){
String filePath = "E:\\softoon\\workspace_softoon\\TestMobile\\src\\1.docx";
String outFilePath = "E:\\softoon\\workspace_softoon\\TestMobile\\src";
String outFileName = "2.docx";

getFile(getBytes(filePath),outFilePath,outFileName);
}

/**
* 获得指定文件的byte数组
*/
public static byte[] getBytes(String filePath){
byte[] buffer = null;
try {
File file = new File(filePath);
FileInputStream fis = new FileInputStream(file);
ByteArrayOutputStream bos = new ByteArrayOutputStream(1000);
byte[] b = new byte[1000];
int n;
while ((n = fis.read(b)) != -1) {
bos.write(b, 0, n);
}
fis.close();
bos.close();
buffer = bos.toByteArray();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return buffer;
}

/**
* 根据byte数组,生成文件
*/
public static void getFile(byte[] bfile, String filePath,String fileName) {
BufferedOutputStream bos = null;
FileOutputStream fos = null;
File file = null;
try {
File dir = new File(filePath);
if(!dir.exists()&&dir.isDirectory()){//判断文件目录是否存在
dir.mkdirs();
}
file = new File(filePath+"\\"+fileName);
fos = new FileOutputStream(file);
bos = new BufferedOutputStream(fos);
bos.write(bfile);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (bos != null) {
try {
bos.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
if (fos != null) {
try {
fos.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: