Java 字符流IO 主要方法总结:
读:File对象 -> FileReader对象 -> BufferedReader对象 -> readLine()/read()方法
写:File对象 -> FileWriter对象 -> BufferedWriter对象 -> write(String str)方法
File类方法:
构造函数:
File file = new File(String path)//path为文件存放的路径, 如E://123.txt
判断文件是否存在:
public boolean exists()
创建文件并返回真值:
public boolean createNewFile()
当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。
实例:
package com.hualuo;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
public class IOTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
int i = 0;
while (i++ <10) {
//这里也可以用E://
write("E:/C#/123.txt", "Hello world!");
}
}
public static void write(String path, String content) {
String s = new String();
String s1 = new String();
try{
File f = new File(path);
if(f.exists()) {
System.out.println("File exists.");
} else {
if(f.createNewFile())
System.out.println("File create succeeded.");
else
System.out.println("File create faile.");
}
BufferedReader input = new BufferedReader(new FileReader(f));
//当读取到的文件非空时,将之添加到s1中,之后重新写入文件
while((s = input.readLine()) != null) {
s1 += s + "\r\n";
}
input.close();
s1 += "HelloWorld!";
BufferedWriter output = new BufferedWriter(new FileWriter(f));
output.write(s1);
output.close();
} catch(Exception e) {
e.printStackTrace();
}
}
}
总结一下插入换行的技巧:
windows下的文本文件换行符:\r\n
linux/unix下的文本文件换行符:\r
Mac下的文本文件换行符:\n/
BufferedWriter对象的newline()方法