安哥网络 发表于 2017-4-11 18:25:33

Java回顾之I/O

Java回顾之I/O
 我计划在接下来的几篇文章中快速回顾一下Java,主要是一些基础的JDK相关的内容。  工作后,使用的技术随着项目的变化而变化,时而C#,时而Java,当然还有IT论坛一些零碎的技术。总体而言,C#的使用时间要更长一些,其次是Java。我本身对语言没有什么倾向性,能干活的语言,就是好语言。而且从面向对象的角度来看,我觉得C#和Java对我来说,没什么区别。  这篇文章主要回顾Java中和I/O操作相关的内容,I/O也是编程语言的一个基础特性,Java中的I/O分为两种类型,一种是顺序读取,一种是随机读取。  我们先来看顺序读取,有两种方式可以进行顺序读取,一种是InputStream/OutputStream,它是针对字节进行操作的输入输出流;另外一种是Reader/Writer,它是针对字符进行操作的输入输出流。  下面我们画出InputStream的结构  
[*]FileInputStream:操作文件,经常和BufferedInputStream一起使用
[*]PipedInputStream:可用于线程间通信
[*]ObjectInputStream:可用于对象序列化
[*]ByteArrayInputStream:用于处理字节数组的输入
[*]LineNumberInputStream:可输出当前行数,并且可以在程序中进行修改
  下面是OutputStream的结构  
[*]PrintStream:提供了类似print和println的接口去输出数据
  下面我们来看如何使用Stream的方式来操作输入输出
[*]使用InputStream读取文件使用FileInputStream读取文件信息
public static byte[] readFileByFileInputStream(File file) throws IOException
{
    ByteArrayOutputStream output = new ByteArrayOutputStream();
    FileInputStream fis = null;
    try
    {
      fis = new FileInputStream(file);
      byte[] buffer = new byte;
      int bytesRead = 0;
      while((bytesRead = fis.read(buffer, 0, buffer.length)) != -1)
      {
            output.write(buffer, 0, bytesRead);
      }
    }
    catch(Exception ex)
    {
      System.out.println("Error occurs during reading " + file.getAbsoluteFile());
    }
    finally
    {
      if (fis !=null) fis.close();
      if (output !=null) output.close();
    }
    return output.toByteArray();
}使用BufferedInputStream读取文件
public static byte[] readFileByBufferedInputStream(File file) throws Exception
{
    FileInputStream fis = null;
    BufferedInputStream bis = null;
    ByteArrayOutputStream output = new ByteArrayOutputStream();
    try
    {
      fis = new FileInputStream(file);
      bis = new BufferedInputStream(fis);
      byte[] buffer = new byte;
      int bytesRead = 0;
      while((bytesRead = bis.read(buffer, 0, buffer.length)) != -1)
      {
            output.write(buffer, 0, bytesRead);
      }
    }
    catch(Exception ex)
    {
      System.out.println("Error occurs during reading " + file.getAbsoluteFile());
    }
    finally
    {
      if (fis != null) fis.close();
      if (bis != null) bis.close();
      if (output != null) output.close();
    }
    return output.toByteArray();
}[*]

[*]使用OutputStream复制文件
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif使用FileOutputStream复制文件
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif使用BufferedOutputStream复制文件
这里的代码对异常的处理非常不完整,稍后我们会给出完整严谨的代码。
  下面我们来看Reader的结构  data:image/png;base64,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  这里的Reader基本上和InputStream能够对应上。    Writer的结构如下  data:image/png;base64,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  下面我们来看一些使用Reader或者Writer的例子
[*]使用Reader读取文件内容
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif使用BufferedReader读取文件内容

[*]使用Writer复制文件
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif使用BufferedWriter复制文件

  下面我们来看如何对文件进行随机访问,Java中主要使用RandomAccessFile来对文件进行随机操作。
[*]创建一个大小固定的文件
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif创建大小固定的文件

[*]向文件中随机写入数据
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif向文件中随机插入数据

  接下里,我们来看一些IT论坛的常用操作
[*]移动文件
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif移动文件

[*]复制文件
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif复制文件

[*]复制文件夹
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif复制文件夹

[*]删除文件夹
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif删除文件夹

[*]获取文件夹大小
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif获取文件夹大小

[*]将大文件切分为多个小文件
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif将大文件切分成多个小文件

[*]将多个小文件合并为一个大文件
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif将多个小文件合并成一个大文件

[*]执行外部命令
http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif执行外部命令


    作者:李胜攀
    出处:http://wing011203.cnblogs.com/


Java回顾之I/O
页: [1]
查看完整版本: Java回顾之I/O