23-IO流(演示键盘录入).
这个系统流是不需要关的,如果要是其他流对象我关了以后,我再new一个,又可以用,这个标准的流不行,从系统获取的这个流对象就一个,你把这个系统流对象一关,这个流对象就再也用不了了,你再通过系统获取流对象就没有,所以你这个东西吧就不要关,随着系统的消失而消失,随着系统的出现而出现
默认的输入设备,和默认的输出设备都不需要关,,你关了就再也获取不了了,除非你重新启动
24-IO流(读取键盘录入)
获取用户键盘录入的数据,
* 并将数据变成大写显示在控制台上,
* 如果用户输入的是over,结束键盘录入。
这个代码自己去完成试一下
25-IO流(转换流)
inputStreamReader,outputWriter的使用
26-IO流(转换流-需求演示)
1,需求:将键盘录入的数据写入到一个文件中。
*
* 2,需求:将一个文本文件内容显示在控制台上。
*
* 3,需求:将一个文件文件中的内容复制到的另一个文件中。
代码自己去写
27-IO流(流的操作基本规律)
转换流:
InputStreamReader :字节到字符的桥梁。解码。
OutputStreamWriter:字符到字节的桥梁。编码。
流的操作规律:
之所以要弄清楚这个规律,是因为流对象太多,开发时不知道用哪个对象合适。
想要知道开发时用到哪些对象。只要通过四个明确即可。
1,明确源和目的(汇)
源:InputStream Reader
目的:OutputStream Writer
2,明确数据是否是纯文本数据。
源:是纯文本:Reader
否:InputStream
目的:是纯文本 Writer
否:OutputStream
到这里,就可以明确需求中具体要使用哪个体系。
3,明确具体的设备。
源设备:
硬盘:File
键盘:System.in
内存:数组
网络:Socket流
目的设备:
硬盘:File
控制台:System.out
内存:数组
网络:Socket流
4,是否需要其他额外功能。
1,是否需要高效(缓冲区);
是,就加上buffer.
2,转换。
28-IO流(流的操作基本规律-需求体现-1)
写出四个明确
需求1:复制一个文本文件。
需求2:读取键盘录入信息,并写入到一个文件中。
29-IO流(流的操作基本规律-需求体现-2)
同样写出四个明确
需求3:将一个文本文件数据显示在控制台上。
需求4:读取键盘录入数据,显示在控制台上。
30-IO流(转换流的编码解码)
Java内置的是uncode码表,对于字符类型的数据是用的uncode,,任何java识别的数据全都是uncode,但是字符串是用的gbk
5,将一个中文字符串数据按照指定的编码表写入到一个文本文件中.
transStreamDemo3.java
什么时候使用转换流呢?
1,源或者目的对应的设备是字节流,但是操作的却是文本数据,可以使用转换作为桥梁。
提高对文本操作的便捷。
2,一旦操作文本涉及到具体的指定编码表时,必须使用转换流。
其他
31-IO流(File对象-构造函数&字段)
//可以将一个已存在的,或者不存在的文件或者目录封装成file对象。
File f1 = new File("c:\\a.txt");
File f2 = new File("c:\\","a.txt");
File f = new File("c:\\");
File f3 = new File(f,"a.txt");
File f4 = new File("c:"+File.separator+"abc"+File.separator+"a.txt");
System.out.println(f4);
32-IO流(File对象-常见功能-获取)
File对象的常见方法。
*
* 1,获取。
* 1.1 获取文件名称。
* 1.2 获取文件路径。
* 1.3 获取文件大小。
* 1.4 获取文件修改时间。
我具体要做的就是演示这些方法
说一下:获取文件的父目录,如果你这个文件是相对路径的,获取的是空null,如果是绝对的话也E:\\java0331\\day22e
现在说一下文件修改时间的用处:
我现在有一个程序正在运行中,而且读取了一个文件中的数据,你将这个文件中的数据改写了,我正在运行,我希望的是你这个文件一旦有改写,我就重新读取你的数据,你怎么知道这个文件被改写了,就是通过修改时间来判定的,我加载完记录这个时间,我怎么判定这个时间变化,单独开一条线程这条线程专门用于监控文件的时间,每三秒监控一次,一旦发生时间值不一样了,就告诉哪边去读取数据,这就是lastmidfiy的用法之一
33-IO流(File对象-常见功能-创建和删除)
2,创建与删除。
34-IO流(File对象-常见功能-判断)
35-IO流(File对象-常见功能-重命名)
36-IO流(File对象-常见功能-系统根目录和容量获取)
37-IO流(File对象-常见功能-获取目录内容)
这个有点技术含量,单独说
38-IO流(File对象-常见功能-过滤器)
接下来你就会说,我想过滤这些隐藏文件,我就要非隐藏的怎么做,隐藏和非隐藏这不是过滤文件名,这是过滤文件,所以你就不能再用这个list方法了,应该用listFiles,这个返回一个file[],拿到了文件,再拿到文件名是不是很容易啊