Java中的I/O操作(一)

              个人认为,java中的流比较多,也很难记,所以,现在,把自己用到过的流总结一下,便于记忆。

FileOutputStream
说明:主要用来写文件
1、    File file = new File("test.txt");
FileOutputStream fos = new FileOutputStream(file);
2、    FileOutputStream fos = new FileOutputStream("test.txt");
FileInputStream
说明:读取文件
1、    FileInputStream fis = new FileInputStream("test.txt");
2、    File file = new File("test.txt");
FiltInputStream fis = new FileInputStream(file);
注:来源于TFTPDemo

Reader
1、    File file = new File("test.txt");
InputStreamReader reader = new InputStreamReader(new FileInputStream(file));
char[] temp=new char[64];
int num=0;
while((num=reader.read(temp)!=-1){
//do sth.
}
File file = new File("test.txt");
BufferedReader reader = new BufferedReader(new FileReader(file));
String temp=null;
while((temp=reader.readLine())!=null){
//do sth.
}
reader.close();
3、 BufferedReader in
   = new BufferedReader(new InputStreamReader(System.in));
注:Reader的子类:BufferedReader, InputStreamReader
InputStreamReader的子类:FileReader
BufferedReader的子类:LineNumberReader
Writer
1、PrintWriter out
   = new PrintWriter(new BufferedWriter(new FileWriter("foo.out")));

注:Writer的子类:BufferedWriter, OutputStreamWriter
OutputStreamWriter的子类:FileWriter
BufferedWriter的子类:没有

按行读的有,返回的都是String:
java.io.BufferedReader.readLine()
java.io.DataInput.readLine()
java.io.DataInputStream.readLine()
java.io.LineNumberReader.readLine()
java.io.ObjectInputStream.readLine()
java.io.RandomAccessFile.readLine()
javax.imageio.stream.ImageInputStream.readLine()
javax.imageio.stream.ImageInputStreamImpl.readLine()  

规律:
在java中关于Stream的类都是读写字节(byte)的,比如InputStream/OutputStream及其子类
关于Reader/Writer的类都是读写字符(Character)的,比如Reader/Writer及其子类。

InputStreamReader
An InputStreamReader is a bridge from byte streams to character streams: It reads bytes and decodes them into characters using a specified charset.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值