java IO学习笔记[1]
每次看javaIO的时候就很烦躁,一是因为太繁琐了,看到这么多类,又是字节流又是字符流的,二是我做javaEE开发的时候用的实在不多,过两天就忘了。
?
流又分为输入流和输出流:这个是以内存为参照的,如果是向内存存入的就是输入流,从内存流出就是输出流。
?
java的IO分为字符流和字节流,字节输入流每次都是从文件或者内存中的读取都是以字节为单位的,在abstract类InputStream中有一个abstract的read方法
?
package com.gengu.input;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import com.gengu.assist.Book;/** * 这个类测试对象字节输入流 * */public class TestObjectInput {public static Object objectInput(String filename) throws IOException, ClassNotFoundException{FileInputStream fin = new FileInputStream("F://新建文件夹 (2)/TestIO/src/com/gengu/input/test.txt");ObjectInputStream oin = new ObjectInputStream(fin);Object object = oin.readObject();fin.close();oin.close();return object;}//向文件中写入对象public static void objectOutput(String filename,Object obj) throws IOException{FileOutputStream fout = new FileOutputStream(filename,false);ObjectOutputStream oout = new ObjectOutputStream(fout);oout.writeObject(obj);oout.close();fout.close();}public static void main(String[] args) throws IOException, ClassNotFoundException {Book book = new Book();TestObjectInput.objectOutput("F://新建文件夹 (2)/TestIO/src/com/gengu/input/test.txt", book);Book book1 = (Book) TestObjectInput.objectInput("F://新建文件夹 (2)/TestIO/src/com/gengu/input/test.txt");System.out.println(book1.getClass()==book.getClass());}}?
?
?
?
?
?
?
?
?
?
?