Java文件和输入和输出
一.流:可以定义为数据序列。分为两种:
Inputstream-用于从源读取数据
Outputstream-用于将数据写入目标
- 字节流
Java字节流用于8位字节输入和输出。由InputStream和OutputStream作为基 类。
- 字符流
用于执行16位unicode的输入和输出。由 Reader和 Writer作为基类。
二.标准流
- 标准输入 - 用于将数据提供给用户程序,通常键盘用作标准输入流并表示为System.in。
- 标准输出 - 用于输出用户程序生成的数据,通常计算机屏幕用于标准输出流并表示为System.out。
- 标准错误 - 用于输出用户程序生成的错误数据,通常计算机屏幕用于标准错误流并表示为System.err。
三.转换流
InputStreamReader将字节输入流转换成字符输入流;
OutputStreamWriter将字 节输出流转换成字符输出流;
使用InputStreamReader
来读取标准输入流,直到用户键入:q
便会停止输入输出。
public class FileDemo {
public static void main(String[] args) throws IOException {
InputStreamReader
cin = null;
try {
tin= new InputStreamReader
(System.in);
System.out.println("Enter characters, 'f' to quit>");
char q;
do {
q = (char) tin.read();
System.out.print(q);
} while(q != 'f');
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
if (tin!= null) {
tin.close();
}
}
}
代码运行结果:
四.目录操作
目录是一个文件,它可以包含其他文件和目录的列表。 使用File
对象创建目录,列出目录中可用的文件。
- 创建目录
两种File类的方法,可用于创建目录 -
- mkdir()方法创建一个目录,创建成功时返回true,失败时返回false。 失败表示File对象中指定的路径已存在,或者由于整个路径尚不存在或权限问题而无法创建目录。
- mkdirs()方法创建目录和目录的所有上级目录。
2.列出目录
可以使用File
对象的list()
方法列出目录中可用的所有文件和目录