FileI/O

/////////////////////////2016-11-14//////////////////////////

int study_data(){

1  流的概念

Java所有的I/O机制都是基于数据流的,这些数据流表示了字符或者字节数据的流动序列。

流是一个很形象的概念,当程序需要读取数据时,就会开启一个通向数据源的流,这个数据源可以是文件,内存,或是网络连接,则这就是“输入流”,(注意:开启数据源,事实上,下文要写入时,也要先开启目的地)。类似的,当程序需要写入数据的时候,就会开启一个通向目的地的流,这就是“输出流”,这时你就可以想像数据好像在这其中“流”动一样。

Java中的流分为两种:

一种是字节流,另一种是字符流

分别由四个抽象类来表示(每种流包括输入和输出各两种,所以一共四个):

InputStream    OutputStream    Reader    Writer

2  Java的I/O库

Java中的字节流是用于处理字节的输入和输出的,包括读写二进制数据等方面的内容。

InputStream  OutputStream

而Java中的字符流则用于处理字符的输入和输出,采用的是Unicode编码(这点比C/C++改进了,C/C++中采用的是ASCII码,因此,在其中时,字符是1个字节,而在这里,Unicode编码,一个字符是两个字节,这样,所有的文字都可以表示了),可以实现国际化。

3.基本流:

1. 键盘输入和格式化输出

它有3个内置的标准流对象,它们是:

1)标准输入流System.io:用于程序的输入,通常用来读取用户从键盘的输入。

2)标准输出流System.out:用于程序的输出,通常用来在屏幕上显示信息。

3)标准出错流System.err:用于显示出错信息。

<1>.基本的键盘输入

(1)方法一:使用System.in对象的方法read()来读取键盘的输入

(2)方法二:可以通过java.io包中提供的流类接收键盘的输入 

(3)可以通过控制台类Console类来实现从键盘输入;控制台类Console不属于Java的标准类库,它属于corejava包

<2>.格式化输出

1)输出方法:用System.out内置的标准输出对象来输出到标准设备(一般是显示器)

2)可以控制显示格式,在java.text包中的NumberFromat类就可以控制输出的格式

3)用户还可以创建自己的格式

4)用Console类格式化输出

2.读和写字节

(1)InputStream类的抽象方法

(2)OutputStream类的抽象方法

(3)available方法

数据流

数据流支持所有Java中的基本类型。

可以通过分别实现了DataOutput和DataInput两个接口的DataOutputStream和DataInputStream类中的方法对基本数据进行读写

文件操作

判断是否存在:file.exists()

判断是否为目录:file.isDirectory()

判断是否为文件:file.isFile()

创建文件夹:creatFolder(folderPath)

创建文件:creatFile(fileName)

列出文件夹下的目录:listFiles(folderPath)

向文件中写内容:writeToFile(fileName)

读取文件内容:readerFile(fileName)

删除文件夹下所有文件(只有在没有二级目录的情况下能成功删除):deleteFiles(folderPath);  

删除文件:

File file = new File(folderPath + "//" + fileName);

file1.delete()

向文件写入内容:

BufferedWriter bWriter = new BufferedWriter(writer);

bWriter.write(String s);

bWriter.newLine();

你可能感兴趣的:(FileI/O)