java 从零开始,学习笔记之基础入门<IO流>(十八)(三)

2014-11-24 08:29:19 · 作者: · 浏览: 4
要先刷新它。
abstract void
flush()刷新该流的缓冲。
void
write(char[] cbuf) 写入字符数组。
abstract void
write(char[] cbuf, int off, int len) 写入字符数组的某一部分。
void
write(int c) 写入单个字符。
void
write(String str) 写入字符串。
void
write(String str, int off, int len) 写入字符串的某一部分。
将”我是中国人”这句话输入到一个txt文件中去,采用的输出是字符输出
对象输入,输出流:
package com.ibm.object;
import java.io.Serializable;
public class Student implements Serializable{
private String name;
private String pass;
privateintage;
publicvoid setName(String name ){
this.name = name ;
}
public String getName(){
returnname;
}
public String getPass() {
returnpass;
}
publicvoid setPass(String pass) {
this.pass = pass;
}
publicint getAge() {
returnage;
}
publicvoid setAge(int age) {
this.age = age;
}
}
package com.ibm.object;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
public class InputObject {
//对象序列化:就是将一个对象按照特定的格式序列化,序列化之后的对象
//可以保存在文件或者在网络中传递可以提高传递效率
//对象序列化必须实现Serializable或Externalizable接口
// ObjectInputStream从文件中读对象
// ObjectOutputStream将对象写到文件中去
public static void main(String[] args) throws IOException {
Student st1 = new Student();
st1.setAge(21);
st1.setName("张三");
st1.setPass("123456");
Student st2 = new Student();
st2.setName("李四");
st2.setPass("654321");
st2.setAge(21);
//将对象通过对象输出流写到文件中去
File file = new File("d:\\ibm1.txt");
OutputStream os = new FileOutputStream(file);
ObjectOutputStream oos = new ObjectOutputStream(os);
oos.writeObject(st1);//将对象写入到对象输出流中去
oos.writeObject(st2);
oos.flush();//清空缓存
oos.close();//关闭流
}
}
package com.ibm.object;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
public class OutputObject {
//将存储在文件中的值读出来,并且打出对象中的属性值
public static void main(String[] args) throws IOException, ClassNotFoundException {
//将文件读进来,采用ObjectInputStream
File file = new File("d:\\ibm1.txt");
FileInputStream is = new FileInputStream(file);
ObjectInputStream ois = new ObjectInputStream(is);
Student st1 = (Student) ois.readObject();
Student st2 = (Student) ois.readObject();
System.out.println(st1.getName());
System.out.println(st1.getPass());
System.out.println(st1.getAge());
System.out.println(st2.getName());
System.out.println(st2.getPass());
System.out.println(st2.getAge());
}
}
andomAccessFile类是一个随机访问流
package com.ibm.random;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
public class InputRandomDe