D:使用打印流实现文件复制
BufferedReader br = new BufferedReader(new FileReader("aaa.txt"));
PrintWriter pw = new PrintlnWriter(new FileWriter("bbb.txt"));
String line = null;
while((line = br.readLine()) != null){
pw.println(line);
}
pw.close();
br.close();
9.标准输入输出流
A: in 标准输入流的使用
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入一个字符串:");
String line = br.readLine();
System.out.println("请输入一个整数:");
line = br.readLine();
int i = Integer.parseInt(line);
B: out 标准输出流的使用
原理:
System.out.println("hello");
PrintStream ps = System.out;
ps.println("hello");
使用:
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
bw.write(line);
案例:
public class Person implements Serializable {
private static final long serialVersionUID = -2071565876962058344L;
private String name;
private transient int age; //使用transient修饰表示不被序列化
private static void writ() throws IOException{
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("oos.txt"));
Person p = new Person("盖聂",40);
oos.writeObject(p);
oos.close();
}
11.Properties
Properties是一个集合类,Hashtable的子类
A:特有功能
public Object setProperty(String key,String value):添加数据
public String getProperty(String key):根据键找值
public Set<String> stringPropertyNames():返回键的集合
B:和IO流结合使用的方法
把键值对形式的文本文件内容加载到集合中
public void load(Reader reader)
public void load(InputStream inStream)
把集合中的数据存储到文本文件中
public void store(Writer writer,String comments)
public void store(OutputStream out,String comments)
C:根据给定的文本文件判断是否有键为:"盖聂",如果有就修改其值为:"卫庄"
Properties prop = new Properties();
Reader r = new FileReader("user.txt");
prop.load(r);
r.close();