JAVA IO及文件操作拾遗

1:字节流和字符流区别

 

字节流InputStreamOutputStream的子类用于处理二进制数据,按字节处理。

字符流ReaderWriter 用于处理文本,即字符流

 

字节流和字符流之间通过InputStreamReaderOutputStreamWriter来关联。实际上就是通过public String(byte bytes[], String charsetName)关联。

 

InputStream  OutputStream  Reader  Writer  InputStreamReader OutputStreamWriter关系

 

public abstract class InputStream extends Object implements Closeable

 

public class FilterInputStream extends InputStream

 

public class BufferedInputStream extends FilterInputStream

 

public class FilterInputStream extends InputStream

 

public class InputStreamReader extends Reader

 

 

 

InputStream stderr = proc.getErrorStream();

InputStreamReader isr = new InputStreamReader(stderr);

BufferedReader br = new BufferedReader(isr);

 

常用方法

 

InputStream

 

Abstract int read() 读取一个字节的数据,如果读到流的结尾,返回-1

 

Int read(byte[] b) 将数据读到一个字节数组返回读取字符的实际数目

 

Int read(byte[] b,int off,int len) 与上一个相比,多了变异量和读取最大字节数

 

Void close() 关闭输入流

 

OutputStream

 

Abstract void write(int n) 写入一个字节的数据

 

Void write(byte[] b) 写入数组b的所有字节

 

Void write(byte[] b,int off,int len) 写入数组b某一范围中的数据

 

Void close() 刷新并关闭输入流

 

Void flush() 刷新输入流,将缓冲区中的所有数据发送到目的地。

 

 

 

压缩

 

压缩文件算法位于cn.com.javacore.io.file. ZIPTools

 

 

 

创建文件的步骤

 

           if(!folderFile.exists()){

              folderFile.mkdirs();

           }

           if(modelFile.exists()){

              if(!modelFile.delete())return null;

           }

           modelFile.createNewFile();

 

 

文件的常见操作

Boolean canRead() 文件是否可读

 

Boolean canWrite() 文件是否可写

 

Static Boolean createTempFile(String prefix,String suffix,File directory)

系统默认临时目录或者指定的目录下创建一个临时文件,使用给定的前缀和后缀生成临时的名称

 

Boolean delete() 删除文件

 

Void deleteOnExit() 请求当虚拟机关闭时删除文件

 

Boolean exists() 判断文件或目录是否存在

 

String getAbsolutePath() 返回一个包含绝对路径的字符串

 

File getCannonicalFile() 返回一个包含文件规范的路径名

 

String getName() 返回文件名

 

String getParent() 返回上级目录

 

File getParentFile() 返回上级目录

 

String getPath() 返回路径名

 

Boolean isDirectory() 是否代表目录

 

Boolean isFile() 是否代表文件

 

Boolean isHidden() 是否是一个隐藏文件或者目录

 

Long lastModified() 返回上次修改时间

 

Long length() 返回文件以字节为单位的长度

 

String[] list() 返回目录下文件的名字数组

 

String[] list(FilenameFilter filter) 返回目录下符合过滤器条件的文件名数组

 

File[] listFiles() 返回目录下文件的数组

 

Static File[] listRoots() 全部可用文件的根目录

 

Boolean createNewFile() 创建新文件

 

Boolean mkdir() 创建子目录

 

Boolean mkdirs() 创建子目录及所有上级目录

 

Boolean renameTo(File dest) 修改文件名称

 

Boolean setLastModified(long time) 设定上次修改时间

 

Boolean setReadOnly() 设定文件为只读

 

URL toURL() 转化File对象到文件URL

 

Boolean accept(File dir,String name) 如果文件符合过滤器条件,就返回True

 

JDK1.4文件操作新特性

内存映射文件                   文件锁定

 

其他

 

1:递归读取目录文件算法位置J2EELibcn.com.javacore.io.file. FindDirectories

2:参考 F:/学习资料/学习文档/学习文档/JAVA2核心技术第1.基础知识7th.pdf

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章