Java I/O(输入(Input)与输出(Output))
·定义:
站在程序的角度上,输入或读取文件,进行相应操作,最后再把结果输入或导入文件的过程
·文件:
·相关记录或放在一起的数据的集合;一般存储在硬盘中,也可以存储在光碟或U盘等移动介质中。
·File类:
·File对象既可以表示文件,也可以表示目录,在程序中一个File对象可以代表一个文件或目录;
·利用File对象可以用来对文件或目录进行基本操作(可以查出与文件相关的信息,如名称、最后修改日期、文件大小等)
·File类的常用方法
·使用File类操作文件和目录属性的步骤一般如下:
//使用File类创建和删除文件
//1)引入File类
//2)构造一个文件对象
//3)调用File类的方法创建和删除文件
public class FileMethods{
public static void main(String[] args) throws IOException{
//创建和删除文件
FileMethods fm = new FileMethods();
File f = new File("C:/myDoc/test.txt");
fm.create(f);
fm.delete(f);
}
//创建文件的方法
public void create(File file) throws IOException{
if(!file.exists()){
file.createNewFile();
}
}
//删除文件的方法
public void delete(File file) throws IOException{
if(file.exists()){
file.delete();
}
}
}
·流:
·背景:File类只能对文件或者目录的属性进行操作,但是不能从文件中读取数据或往文件里写数据。能够对文件进行读写的操作就叫做流。
·定义:流是指一连串流动的字符,是以先进先出的方式发送和接收数据的通道
·输入流与输出流:流分为输入流和输出流(相对计算机内存来说的)
·流对象:
在程序中,输入/输出流类的对象称为流对象。可以通过这些流对象将内存中的数据以流的方式写入文件,也可以通过流对象将文件中的数据以流的方式读取到内存。
构造流对象时往往会和数据源(如文件)联系起来。
数据源分为源数据源(与输入流关联)和目标数据源(与输出流关联)。
·字节流与字符流:输入/输出流又分为字节流和字符流
- 字节流是8位通用字节流,其基本单位是字节。
- 字符流是16位Unicode字符流,基本单位是Unicode字符。字符流最适合用来处理字符串和文本,因为它们支持国际上大多数的字符集和语言。
·上述四个抽象类的常用方法如下
InputStream类的常用方法
OutputStream类的常用方法
Reader类的常用方法
Writer类的常用方法