美文网首页
流与文件

流与文件

作者: 云师兄 | 来源:发表于2018-06-20 21:29 被阅读13次
  • 可以从其中读入一个字节序列的对象称为输入流,而可以向其中写入一个字节序列的对象叫做输出流。抽象类InputStream,OutputStream构成了输入输出层次结构的基础。
  • InputStream和OutputStream实现类一般都要覆盖read和write方法,这两个方法在运行时都会阻塞,直至读到数据或者写完数据。为提高效率,可以使用available方法判断当前是否可读,再进行相关操作:
int byteAvailable = in.available();
if(byteAvailable){
  byte [] data = new byte[byteAvailable];
  in.read(data);
}
  • 读写结束后,要使用close来关闭流,关闭输出流的同时会冲刷输出流的缓冲区,若不关闭可能写出字节的最后一个包不能传递出去。此外也可以人为使用flush方法冲刷这些输出。
  • FileInputStream和FileOutputStream可以提供附着在一个磁盘文件上的输出流和输入流,构造函数中传入文件名或者文件的完整路径即可:
FileInputStream fin = new FileInputStream("employee.dat");

注意:windows风格路径要写为c:\windows\win.ini这种格式,而不能使用反斜杠,因为反斜杠是转义字符。

  • BufferedInputStream和BufferedOutputStream 创建一个带缓冲区的流。
  • 使用InputStreamReader类使用选定的unicode字符流转换为其他编码格式的字节流:
InputStreamReader in = new InputStreamReader(new FileinputStream("Kremlin.dat"),"ISO8859_5");
  • PrintWriter类实现文本输出:
PrintWriter out = new PrintWriter(new FileWriter("employee.txt"));
out.print("hello world");

这样就将字符串写到文件中了。PrintWriter和FileOutputStream的区别在于PrintWriter支持特定格式的输出字符串,而FileOutputStream则只支持字节级别上的读写。

相关文章

  • 流与文件-流

    写在书上 保存下来防止丢失

  • 流与文件

    可以从其中读入一个字节序列的对象称为输入流,而可以向其中写入一个字节序列的对象叫做输出流。抽象类InputStre...

  • 文件与流

    JAVA中的文件及目录处理类 在Java中提供了操作文件及目录(即我们所说的文件夹)类File。有以下几点注意事项...

  • 文件与流

    文件 作用:对文件的管理,在程序里操作硬盘的文件和文件夹概述:通过IO包中的File类实现对文件的管理功能:文件的...

  • 第12章 文件与流

    目标 文件与目录管理 流 文件读写(字节流 字符流) 对象序列化 文件与目录管理 前置任务 前置需要了解的知识1、...

  • 16 文件与流

    什么是文件? 文件可认为是相关记录或放在一起的数据的集合 JAVA程序如何访问文件属性? JAVA中的文件及目录处...

  • IO与流 -- 文件

    文件对象 可以将存在或不存在的文件或目录封装为对象 当创建一个文件对象后,就可以利用它来对文件或目录的属性进行操作...

  • 文件与流-1

    文件与流 持久化操作:(文件里、数据库里)Java.io 文件分隔符 目录操作 文件操作

  • Python与文件流

    Python读写文件非常简单,本文除了介绍简单的读写字符文件和字节文件以外,还会介绍文件对象的属性方法和文件流的一...

  • js blob导出文件 文件下载 中文乱码的问题

    需求:后端文件以二进制流的形式返回给前端, 前端需要读取流文件实现文件下载。 场景:下载成功,文件乱码。 原因:与...

网友评论

      本文标题:流与文件

      本文链接:https://www.haomeiwen.com/subject/zuxfyftx.html