您的位置:首页 > 其它

IO视频学习——FileWriter,FileReader简单操作

2011-08-24 21:54 323 查看
import java.io.*;

public class OperateFileWriter_Ex01 {
public static void main(String[] args)  {
FileWriter fw =null;
try{
//创建一个FileWriter对象,初始化是必须要清楚被操作的文件
//若该操作文件不存在指定的目录下,则会建立到该目录下,若该目录存在该操作文件将会覆盖掉.
//也就是数据存放的目的地
//fw = new FileWriter("D:\\IO_Ex01.txt");

//是否附加写入数据的 boolean 值来构造 FileWriter流对象.
//若该操作文件不存在指定的目录下,则会建立到该目录下,若该目录存在该操作文件将会覆盖掉.
//如果为 true 则将数据写入文件末尾处,而不是写入文件开始处
fw = new FileWriter("IO_Ex01.txt",true);

//调用基类Writer的write()方法:将字符串写入到流中
fw.write("Hello !\r\n thank you!");//\n在liunx下是换行,而\r\n才windows是换行
//fw.fulsh();->刷新流对象中的缓冲数据,将数据刷新到文件当中去,流还可以继续操作.
//fw.close();->一般关闭流对象之前会调用fulsh()方法:close刷新,会将流关闭。
}catch(IOException e){
System.out.print("catch:"+e.toString());
}finally{
try{
if(fw!=null){
fw.close();
}
}catch(IOException e){
System.out.print("finally:"+e.toString())			;
}
}
}
}


import java.io.*;

class OperateFileReader_Ex01
{
public static void main(String[] args)
{
//用来读取字符文件的便捷类。
FileReader fr = null;
try{
//创建一个文件啊读取流对象,和指定的文件相关联
//一定要保证该文件是存在的,否则将会发生FileNotFoundException异常
fr=new FileReader("IO_Ex01.txt");
int ch = 0;
//调用读取流单个读取的方法->一次读一个字符,会自动往下读.
//返回字符的ascii值(0-65535),如果已到达流的末尾,则返回 -1;
while((ch=fr.read())!=-1){
System.out.println((char)ch);
}
}catch(IOException e){
System.out.println("catch:"+e.toString());
}finally{
try{
if(fr!=null){
fr.close();
}
}catch(IOException e){
System.out.println("finally:"+e.toString());
}
}
}
}


import java.io.*;
class OperateFileReader_Ex02
{
public static void main(String[] args)
{
//用来读取字符文件的便捷类。
FileReader fr = null;
try{
//创建一个文件啊读取流对象,和指定的文件相关联
//一定要保证该文件是存在的,否则将会发生FileNotFoundException异常
fr=new FileReader("IO_Ex01.txt");
//定义一个字符数组,用于存储读取的字符
//该read(char[]) 返回的是:读取的字符个数,如果已到达流的末尾,则返回 -1;
char[] buf = new char[3];

int num1 = fr.read(buf);//若文件中存在的内容是:abcdefg
System.out.println("num1:...."+num1+"  "+new String(buf));//print:num1:...3 abc

int num2 = fr.read(buf);//再读取一次 会将char[]中的值替换掉
System.out.println("num2:...."+num2+"  "+new String(buf));//print:num2:...3 def

int num3 = fr.read(buf);//再次读取 解释如图:Pic_FileReader
System.out.println("num3:...."+num3+"  "+new String(buf));//print:num3:...1 gef

}catch(IOException e){
System.out.println("catch:"+e.toString());
}finally{
try{
if(fr!=null){
fr.close();
}
}catch(IOException e){
System.out.println("finally:"+e.toString());
}
}
}
}




import java.io.*;

class  OperateFileReader_Ex03
{
public static void main(String[] args)
{
//用来读取字符文件的便捷类。
FileReader fr = null;
try{
//创建一个文件啊读取流对象,和指定的文件相关联
//一定要保证该文件是存在的,否则将会发生FileNotFoundException异常
fr=new FileReader("IO_Ex01.txt");
//定义一个字符数组,用于存储读取的字符
//该read(char[]) 返回的是:读取的字符个数,如果已到达流的末尾,则返回 -1;
//一般char[]的长度定义为1024的整数倍
char[] buf = new char[1024];
int num =0;
while((num=fr.read(buf))!=-1){
System.out.print(new String(buf,0,num));
}

}catch(IOException e){
System.out.println("catch:"+e.toString());
}finally{
try{
if(fr!=null){
fr.close();
}
}catch(IOException e){
System.out.println("finally:"+e.toString());
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: