您的位置:首页 > 编程语言 > Java开发

Java基础学习 —— io

2017-09-05 15:58 369 查看
1 /**
2 解决数据与数据之间的传输问题。
3 字节流:
4 输入字节流:
5 -------| InputStream 所有输入字节流的基类。抽象类。
6 -----------| FileInputStream 读取文件的输入字节流。
7 -----------| BufferedInputStream 缓冲输入字符的字节流 该类内部 维护了一个8kb的字节数组。该类出现的目的 是为了提高读取文件数据的效率。
8
9 输出字节流:
10 -------| OutputStream 所有输出字节流的基类。抽象类。
11 -----------| FileOutputStream 向文件输出数据 的输出字节流。
12 -----------| BufferedOutputStream 缓冲输出字节流,为了提高写入文件的效率。类内部也是维护了一个8kb的字节数组。
13
14 什么情况使用字节流?
15 字节流都是为了读取到2进制的数据。
16 读取到的数据 不需要经过编码 解码的情况下, 可以使用字节流 such as: 图片数据 图片数据 不需要变成我们可以读懂的字符流。不需要进过解码
17 如果读到的数据 需要转换成 我们读的懂的字 那就必须要转换成字符流
18 字符流=字节流+编码(解码)
19
20
21 字符流:
22 输入字符流:
23 -------| Reader 所有输入字符流的基类。抽象类。不可以直接使用
24 -----------| FileReader 读取文件字符的输入字符流
25 -----------| BufferedReader 缓冲输入字符流 该类出现的目的 是为了提高读取文件字符的效率。内部是维护了一个8192个长度字符数组。除了提高效率,并且还拓展了功能, 多了个readline()的功能
26
27 输出字符流:
28 -------| Writer 所有输出字符流的基类。抽象类
29 -----------| FileWriter 向文件输出字符数据的输出字符流。
30 -----------|BufferedWriter 缓冲输出字符流。为了提高写入文件的效率和拓展了功能newline()
31
32 什么时候用到字符流呢?
33 读取到的字节数据需要被转换成字符数据,这时候我们就使用字符流,如果是读写的都是字符数据这时候我们需要用字符流。
34
35
36 转换流:
37 -------|InputStreamReader 输入字节流的转换流。可以吧一个输入字节流 转换成输入字符流,(前面字节,后面字符)
38 -------|OutputStreamReader 输出字节流的转换流
39
40 转换流的作用:
41   1.可以吧对应的字节流转换成字符流使用。
42   2.
43
44  */
45 public class demo1 {
46     public static void main(String[] args) throws Exception {
47         testInput();
48     }
49     public static void testInput() throws Exception{
50
51         //标准输入流,默认读取控制台。用in来读控制台的内容
52         InputStream in = System.in;
53         int read = in.read();
54         System.out.println(read);
55     }
56 }

 该demo输出的是字节流

sony是猪
View Code

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: