File类
File类是java.io中唯一能代表磁盘文件本身的对象提供对文件外部访问的属性。所有学习的IO相关的类都在java.io包下该报有jdk官方提供。
构造方法
File ( File parent, String child)
File ( String pathname)
File ( String parent, String child)
File ( URI uri)
常用的方法
getName()回去文件命 isDirectory()判断是否是文件夹 listFIles()将文件转换成数组的形式返回
public void ListFile ( File file) {
File files[ ] = file. listFiles ( new FileFilterImp ( ) ) ;
for ( File f: files) {
if ( f. isDirectory ( ) ) ListFile ( f) ;
else System. out. println ( f. getName ( ) ) ;
}
}
文件过滤器的实现FileFilter是接口其是接口的实现对象需要对accept进行重写
public class FileFilterImp implements FileFilter {
@Override
public boolean accept ( File f) {
return true ;
}
输入输出流
InputStream/OutputStream类
两个输入输出流类都是抽象类不能实例化需要用FileinputStream进行实例化 流通道在使用后要进行关闭,关闭是可能会出现异常需要对可能出现的异常情况进行不做处理 InputStream类的read方法内有指针在读取数据时会向后移,无数据时返回值为-1可根据此来判断数据的读取情况
常用的函数从流中读取数据
int read ( )
int read ( byte b[ ] )
int read ( byte b[ ] , int off, int len )
int available ( )
long skip ( long n )
close ( )
桥(转换流)
InputStreamReader 字节流到字符流的桥:它读取字节,并使用指定的charset将其解码为字符。 OutputStreamWriter 字符流到字节流的桥: 所得到的字节在写入底层输出流之前累积在缓冲区中。 请注意,传递给write()方法的字符不会缓冲。 为了最大的效率,请考虑在BufferedWriter中包装一个OutputStreamWriter,以避免频繁的转换器调用。缓冲区的字符一次调用直接全部解码。