使用fileoutputstream类向文件写入数据与使用fileinputstream类从文件中将内容读取出来,存在不足,就是中文占两个字节,搞不好就会也现乱码。所以出现FileReader和FileWriter做为fileoutputstream、fileinputstream的替代方案。
FileReader从流中按顺序进行读取,只要文件不close,用read()方法就可以顺序的读取源中的内容。直到源或流被close。
以下是code:
/*
*
* 写入文件内容
*/
public static void writerTest()
{
try
{
File file = new File("e:/java.txt");
FileWriter fwriter = new FileWriter(file);
fwriter.write("白日依山尽,黄河入海流");
fwriter.close();
} catch (Exception ex)
{
ex.printStackTrace();
}
}
/*
* 读取文件
*
*/
public static void readtest()
{
try
{
File file = new File("e:/java.txt");
FileReader reader = new FileReader(file);
char[] bty = new char[1024];
int len = reader.read(bty);//将字节写入到数组
System.out.println(new String(bty, 0, len));//设置文本域的显示信息
reader.close();
} catch (Exception ex)
{
ex.printStackTrace();
}
}
结果: