相关文章:Java中如何通过字节输入流和字符输入流读取文件?
本篇:Java中如何通过字节输出流和字符输出流向文件中写内容?
1、通过字节输出流向文件中写内容
package test02;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class WriteFile {
public static void main(String[] args) {
FileOutputStream fos = null;
try {
//该方式会把原文件内容删除,再添加新内容
//fos = new FileOutputStream("F:\\test01\\test01.txt");
//该方式会直接在原文件内容后面进行追加,前提是append为true
fos = new FileOutputStream("F:\\test01\\test01.txt",true);
byte[] bytes = {97,98,99};
fos.write(bytes);//abc
//向文件中添加字符串,若添加整数,也是以字符串的方式添加
String s = "哈哈我好开心啊";
//调用String中的getBytes()方法,将字符串转为byte数组
byte[] bytes1 = s.getBytes();
fos.write(bytes1);//abc哈哈我好开心啊
//输出流要记得刷新
fos.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fos != null) {
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
2、通过字符输出流向文件中写内容
package test04;
import java.io.FileWriter;
import java.io.IOException;
//通过字符输出流向文件写内容
public class WriterFile {
public static void main(String[] args) {
FileWriter fw = null;
try {
fw = new FileWriter("F:\\test01\\test02.txt",true);
char[] chars = {'a','将','l',98,45};
fw.write(chars);
//还可以直接操作字符串
fw.write("我长得很帅,哈哈哈");
fw.flush();
} catch (IOException e) {
e.printStackTrace();
}finally {
if (fw != null) {
try {
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}