原文地址:https://docs.oracle.com/javase/tutorial/essential/io/index.html

说明:每一个点都有一篇详细的文章与之对应,每翻译完一篇文章会更新对应的连接; 使用到的所有实例代码均基于java 8,并不会映入后续版本的增强功能!



IO基础教程:

本教程涵盖了java平台类中所使用到的IO基础。首先,关注IO流,这是一个极其强大的概念,它大大简化了IO操作。 这个教程也关注序列化,它使得程序可以将整个对象写入流中并再次读取它们。然后,这个教程将介绍IO和文件系统的相关操作,包括随机访问文件。

在IO Streams部分,大多数的类都被包含在java.io包中,在File IO部分,大多数的类则包含在java.nio.file包中

IO Streams

1,字节流:处理原始的二进制数据IO流

2,字符流:处理字符数据的I / O,自动处理和转换本地字符集

3,缓冲流:通过减少对本机API的调用次数来优化输入和输出

4,格式化读写:允许一个程序读写格式化文本

5,来源于命令行的IO:描述标准流和控制台对象

6,数据流:处理原始数据类型和字符串值的二进制I / O

7,对象流:处理对象的二进制IO

File IO(NIO.2)

1,什么是路径?解释文件系统中路径的概念

2,路径类:介绍java.nio.file包中的关键类

3,路径操作:查看处理语法操作的Path类中的方法

4,文件操作:介绍大多数文件IO方法的基本概念

5,检测文件或者目录:展示如何去检测文件是否存在以及它的深度

6,删除文件或者目录

7,复制文件或者目录

8,移动文件或者目录

9,元数据管理:解释如何读并设置文件的节点属性

10,读、写并创建文件:展示用于文件读写的流和通道方法

11,随机访问文件:展示如何以非顺序方式读写文件

12,创建并读取目录:包含操作目录的API规范,例如如何列举一个目录的内容

13,链接、符号或其他:涵盖特定于符号和硬链接的问题

14,文件树分析:展示如何递归地访问文件树中的每个文件和目录

15,查找文件:展示如何使用模式匹配查找文件

16,监控目录的变动:显示如何使用监视服务来检测在一个或多个目录中添加,删除或更新文件

17,其他有用的方法:涵盖更多无法在本教程中展示,却十分有用的方法

18,传统IO文件代码:显示如何使用Path功能,如果您使用java.io.File类的旧代码。提供了将java.io.File API映射到java.nio.file API的表

总结

java.io包涵盖了大多数程序中可以用来读取数据的类。很多类实现了序列化访问流。这个序列化访问流被分为两个组:一,读取字节流;二,读取Unicode字符。每一个序列化访问流都有一个规范,例如从一个文件进行读取,过滤数据为读写或者序列化一个对象。

java.nio.file包提供了很多强大的类去支持文件的IO操作。这些都是非常全面的API,但是,他们主要包括以下方面:

1,Path类具有操纵路径的方法

2,Files类具有用于文件操作的方法,例如移动,复制,删除以及用于检索和设置文件属性的方法

3,FileSystem类有多种方法来获取有关文件系统的信息

最新文章

  1. click事件的累加绑定,绑定一次点击事件,执行多次
  2. django基于正则的url匹配
  3. JMeter入门
  4. Paths on a Grid(poj 1942)
  5. [tp3.2.1]大D构建模型
  6. AndroidManifest修改重打包全过程
  7. URAL1017. Staircases
  8. python之numpy库[1]
  9. Windows 安装 python2.7
  10. 让你的微信小程序具有在线支付功能
  11. Storm入门(三)HelloWorld示例
  12. 周末学习笔记——day01(函数,函数对象,嵌套调用,名称空间,作用域,闭包,装饰器)
  13. OGG 18.1 for mysql远程捕获测试
  14. javascript基础学习系列-1
  15. highchart柱状堆叠图动态数据请求
  16. hdu 3698 UVA1490 Let the light guide us 线段树优化DP
  17. L237
  18. 【maven】在idea上创建maven多模块项目
  19. Java的四种引用之强弱软虚
  20. cocos2d::CCFileUtils::sharedFileUtils()->getFileData(szFile, "r", &bufferSize) 不同平台返回值不一样

热门文章

  1. jsp之数据提交与获取(传统方法)
  2. 洛谷 P2014 选课
  3. 菜鸟的数据库实战-4-数据阅读器SqlDataReader
  4. FreeRTOS_事件标志组
  5. OTOH
  6. 【kmp】bzoj3620: 似乎在梦中见过的样子
  7. 使用Spring MVC后实现一个BaseController
  8. 【mac】【php】mac php开机重启
  9. kafka的初认识
  10. supervisor 安装使用