首先是File类,File类唯一JAVA中代表文件信息的的类,而不是文件内容。
RandomAccessFile类,使我们非常灵活的操作文件。SkipByte控制跳转,从文件的哪个部分进行操作。
学习InputStream类,该类的int read()等各种方法。OutputStream类,以及各种继承他的子类。
在讲解flush()方法时老师举了个自己的例子,我十分赞同。应当着重提高我们对编写程序的理解,拓宽视野,能有效的结合自身的认识解决实际问题。
独立编程实现简单的创建文件,通过输出流写入一个文件内容,再通过输入流读取文件的内容,输出。
Reader类和Writer类。用于简化对输入输出的编程。Reader类和Writer类主要用于读写文本文件的内容。练习通过使用FileWriter来写入一个文件,通过FileReader读取一个文件的内容。
PipedInputStream类和PipedOutputStream一般都要extends Thread类,类似两个管道,通过connect函数连接,进行通信。通过编程实现视频例子。
Integer n = numbers.get("two");
if (n != null) {
System.out.println("two = " + n);
}
public PipedOutputStream getOutputStream(){ //返回管道输出流对象
return out;
}
//这是一个线程类,所以它应该覆盖Thread的run方法,run方法在线程类启动时自动运行
public void run(){ //这里的run方法用于向PipedOutputStream中写入一串数据
String strInfo = new String("hello,receiver!");
try{ //write和close方法都可能有异常出现
out.write(StrInfo.getBytes());
out.close();
}
catch(Exception e){
e.printStackTrace();}}}
ByteArrayInputStream和ByteArrayOutputStream类是创建一个字节数组缓冲区,操作一个数组长度的字节流的编程更加灵活,实用。
try {
ByteArrayOutputStream bos = new ByteArrayOutputStream(100);
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject( "asdfsad ");
byte [] bytes = bos.toByteArray();
InputStream bais = new ByteArrayInputStream(bytes);
ObjectInputStream ois = new ObjectInputStream(bais);
} catch (IOException e) {
e.printStackTrace();
}
try {
Runtime.getRuntime().exec(%%1); //"assoc .txt =mynote" "assoc [.ext[=[filetype]]]"
} catch (IOException e) {
e.printStackTrace();
}
这个一个文件关联的代码片段,个人感觉很有用。