字节流
字节输出流
OutputStream os = new FileOutputStream(file, true);//普通字节输出
os.write(string.getBytes());//向文件写入内容
BufferedOutputStream bis = new BufferedOutputStream(new FileOutputStream(file, true));//缓冲字节流
字节输入流
InputStream in = new FileInputStream(file);
BufferedInputStream fis = new BufferedInputStream(new FileInputStream(file));//字符缓冲流
char[] chars = new char[1024];
StringBuilder sb = new StringBuilder();
int length;
while ((length = isr.read(chars)) != -1) {
sb.append(chars, 0, length);
}
字符流
字符输出流
FileWriter fw = new FileWriter(file, true);
BufferedWriter bw = new BufferedWriter(new FileWriter(file, true));
bw.write(string);
字符输入流
FileReader fr = new FileReader(file);
char[] chars = new char[1024];
StringBuilder sb = new StringBuilder();
int length;
while ((length = fr.read(chars)) != -1) {
sb.append(chars, 0, length);
}
BufferedReader br = new BufferedReader(new FileReader(file));
StringBuilder sb = new StringBuilder();
String line;
while ((line = br.readLine()) != null) {//按行读取是字符缓冲的特殊方法
sb.append(line);
}
特殊:
- 使用缓冲流记得flush
- BufferedWriter类newLine() :写入一个分割符
- BufferedReader类readLine() :读取一个文本行