java 8:I / O 基础
原文地址: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类有多种方法来获取有关文件系统的信息
java 8:I / O 基础的更多相关文章
- Java 教程整理:基础、项目全都有
Java 在编程语言排行榜中一直位列前排,可知 Java 语言的受欢迎程度了. 网上有很多 Java 教程,无论是基础入门还是开发小项目的教程都比比皆是,可是系统的很少,对于Java 学习者来说找到系 ...
- JAVA多线程和并发基础面试问答(转载)
JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...
- Java回顾之Spring基础
第一篇:Java回顾之I/O 第二篇:Java回顾之网络通信 第三篇:Java回顾之多线程 第四篇:Java回顾之多线程同步 第五篇:Java回顾之集合 第六篇:Java回顾之序列化 第七篇:Java ...
- [转] JAVA多线程和并发基础面试问答
JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...
- JAVA多线程和并发基础面试问答
转载: JAVA多线程和并发基础面试问答 多线程和并发问题是Java技术面试中面试官比较喜欢问的问题之一.在这里,从面试的角度列出了大部分重要的问题,但是你仍然应该牢固的掌握Java多线程基础知识来对 ...
- 【多线程】JAVA多线程和并发基础面试问答(转载)
JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...
- Java入门到精通——基础篇之多线程实现简单的PV操作的进程同步
Java入门到精通——基础篇之多线程实现简单的PV操作的进程同步 一.概述 PV操作是对信号量进行的操作. 进程同步是指在并发进程之间存在一种制约关系,一个进程的执行依赖另一个进程的消 ...
- [Java] Java 技术和 JVM 基础
Java 由 Sun 公司在 1995 首次发布,既是一门编程语言,也是一个计算平台. Java 运行时版本 Java Runtime Edition 当你下载 Java 完时候,你会得到一个 Jav ...
- Java学习之旅基础知识篇:数据类型及流程控制
经过开篇对Java运行机制及相关环境搭建,本篇主要讨论Java程序开发的基础知识点,我简单的梳理一下.在讲解数据类型之前,我顺便提及一下Java注释:单行注释.多行注释以及文档注释,这里重点强调文档注 ...
- (转)JAVA多线程和并发基础面试问答
JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...
随机推荐
- [windows]窗口文件夹中使用常见任务
文件夹中使用常见任务,如截图所示增加红色框部分. 设置步骤: 我的电脑--〉右键--〉属性--〉高级选项--〉性能设置--〉自定义:勾选在文件夹中使用常见任务.
- ABAP Development Tools的语法高亮实现原理
ABAP Development Tools的前端是Java,根本识别不了ABAP.那么在ADT里的ABAP语法高亮是如何实现的? 第一次打开一个report时,显示在ADT里的代码是没有任何语法高亮 ...
- Oracle中ROWID详解
oracle数据库的表中的每一行数据都有一个唯一的标识符,或者称为rowid,在oracle内部通常就是使用它来访问数据的.rowid需要 10个字节的存储空间,并用18个字符来显示.该值表明了该行在 ...
- 2018.2.14 Java中的哈夫曼编码
概念 哈夫曼编码(Huffman Coding),又称霍夫曼编码,是一种编码方式,哈夫曼编码是可变字长编码(VLC)的一种.Huffman于1952年提出一种编码方法,该方法完全依据字符出现概率来构造 ...
- docker单主机网络
当你安装Docker时,它会自动创建三个网络.你可以使用以下docker network ls命令列出这些网络: [root@localhost ~]# docker network ls NETWO ...
- Bootstrap历练实例:向列表组添加内容
向列表组添加自定义内容 我们可以向上面已添加链接的列表组添加任意的 HTML 内容.下面的实例演示了这点: <!DOCTYPE html><html><head>& ...
- 空类生成对象输出的结果是什么? toString()输出 覆写Object toString()方法输出的结果是什么
空类生成对象输出的结果是什么? 输出的是对象在内存空间地址的哈希值 com.swift.P@1db9742 空类生成对象toString()输出的结果是什么? 输出的是对象在内存空间地址的哈希值的字符 ...
- (转发)IOS高级开发~Runtime(三)
11.系统类的方法实现部分替换 - (void) methodExchange { Method m1 = class_getInstanceMethod([NSStringclass],@selec ...
- 【线段树 树链剖分 差分 经典技巧】loj#3046. 「ZJOI2019」语言【未完】
还是来致敬一下那过往吧 题目分析 先丢代码 #include<bits/stdc++.h> ; ; ; struct node { int top,son,fa,tot; }a[maxn] ...
- mongo 副本集+分片 配置
服务器规划如下: 副本集名称|服务器IP 192.168.56.111 192.168.56.112 192.168.56.113 shard1 3201 3201 3201 shard2 3202 ...