欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JAVA-输入输出流总结

程序员文章站 2024-01-16 15:49:23
...

JAVA-输入输出流总结

  • 说明: 对于程序来说的输入和输出,而不是对于文件来说的.
    程序->文件(输出)
    程序<-文件(输入)

先要了解: 文件

构造方法:    
File(String Filename文件名) 
File(String DirectoryPath路径名,String Filename文件名)
File(String Dirobj指定目录,String Filename文件名) 

eg:
File f1=new File("a.txt");  (在当前类的目录下,创建一个a.txt的文件)

JAVA流分为:

  • 文件字节流
  • 文件字符流
  • 缓冲流
  • 数据流
  • 对象流

文件字节流

(一个字节一个字节读,因此处理汉字出现乱码 (汉字是占两个字节) )
(数据流套用)

*  输入流FileInputStream
        构造方法: FileInputStream(String name)
        读操作: int read();
                   int read(byte a[]); 
* 输出流FileOutputStream
        构造方法: FileOutputStream(String name)
        读操作: void write();
                   void write(byte b[]);

文件字符流

(可处理汉字,处理为Unicode字符)
(缓冲流套用)

* 输入流FileReader
        构造方法: 同上
        读操作: 
        int read()
        int read(char b[])
* 输出流FileWriter
         构造方法: 同上
         写操作:
         write(char b[])  建字符数组-字符串变字符数组-写入文件
         write(String str)

缓冲流

(文件字符流作为参数)

* 输入流BufferedReader
        构造方法:BufferedReader(Reader in)
        读文本行: readerLine()
* 输出流BufferedWriter
     构造方法:BufferedWriter(Writer)
    写操作:write(String str)

eg:
FileReader in=new FileReader("a.txt");
BufferedReader inin=new BufferedReader(in);

数据流

(数值类数据的读取,读取long double boolean)
(不是字节/字符存储,打开为乱码)

* 输入流DataInputStream
        构造方法:DataInputStream(InputStream in)
        读:  
         readInt()
         readDouble()
* 输出流DataOutputStream
     构造方法:DataOutputStream(OutputStream out)
     写:
     writeInt()
     writeDouble()
     writeLong()

对象流

(”名称+密码“为对象,以对象为单位; 类必须序列化)
(字节流作为参数)

* 输入流ObjectInputStream
        构造方法: ObjectInputStream(InputStream in)
        读: readObject(Object obj)
* 输出流ObjectOutputSteam   
     构造方法: ObjectOutputStream(OutputStream out)
     写: writeObject(Object obj)
相关标签: 输入输出流