java IO流学习总结
Io流
流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。它的特性是进行数据传输;
流的分类
流按照流向数据流向可以分为输入流和输出流。
流按照处理数据类型的单位不同可以分为字节流和字符流。
字节流能处理所有类型的数据(如图片、avi等),而字符流只能处理字符类型的数据。
输入流: 只能从中读取数据,而不能向其写入数据。
输出流:只能向其写入数据,而不能向其读取数据。
文件的复制
//io的文件复制
public class Io {
public static void main(String[] args) {
File file = new File("D:" + File.separator + "XLY.txt"); //已有的文件
File fileCopy = new File("D:" + File.separator + "ioliu.txt"); //准备复制的文件
InputStream in = null;
OutputStream out = null;
try {
if (!(fileCopy.exists())) { // 目标文件不存在就创建
fileCopy.createNewFile();
}
in = new FileInputStream(file); // 已有文件创建输入流
out = new FileOutputStream(fileCopy, true); // 给复制文件创建输出流
byte[] temp = new byte[1024];
int length = 0;
while ((length = in.read(temp)) != -1) { // 已有文件读取一部分内容
out.write(temp, 0, length); // 复制文件写入一部分内容
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// 关闭文件输入输出流
in.close();
out.close();
} catch (Exception e) {
e.printStackTrace();
}