栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

IO流-输入输出流 文件复制

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

IO流-输入输出流 文件复制

IO流
定义:
分类:

输入字节流(读文件)
public class FileDemo {
	// 字节流-读文件
	public static void readFile() throws IOException {
		// 创建文件管理类
		File file = new File("E:\eclipse\eclipse\workplace\ceshi.txt");
		// 创建字节输入流
		InputStream in = new FileInputStream(file);
		// 获取读取的字节数
		int size = in.available();
		for (int i = 0; i < size; i++) {
			// 读取文件数据,字节流返回的是ASCLL码,需要将数字转为char字符
			// read():从输入流中向下读取一个字节,返回的是ASCLL码
			char res = (char) in.read();
			System.out.print(res);

		}
	}

	public static void main(String[] args) {
		try {
			readFile();
		} catch (Exception e) {
		e.printStackTrace();
		}
	}
}
输出字节流(写文件)
// 字节流-写文件
	public static void writeFile() throws IOException {
		// 创建文件管理类
		File file = new File("E:\eclipse\eclipse\workplace\ceshi.txt");
		//创建文件输出字节流
		OutputStream out= new FileOutputStream(file);
		//待写入的文本
		String content="123";
		//写入文件
		out.write(content.getBytes());
		//刷新输出流
		out.flush();
		//关闭输出流
		out.close();
	}
字符输入流
public static void readFile2() throws IOException {
		//创建文件管理类
		File file = new File("E:\eclipse\eclipse\workplace\ceshi.txt");
		//创建字节输入流
		InputStream in=new FileInputStream(file);
		//字节输入流转字符输入流,设置伟utf-8
		InputStreamReader reader=new InputStreamReader(in,"UTF-8");
		//创建字符流处理类
		BufferedReader br=new BufferedReader(reader);
		String line=br.readLine();//向下读取一行数据,如果没有返回null
		while(line!=null) {
			System.out.println(line);
			line=br.readLine();
		}
		//关闭
		br.close();
		reader.close();
		in.close();
	}
字符输出流
//字符输出流
	public static void writeFile2() throws IOException{
		//创建文件管理类
		File file=new File("E:\eclipse\eclipse\workplace\ceshi.txt");
		//创建字节输出流
		OutputStream out =new FileOutputStream(file);
		//字节流转字符流
		OutputStreamWriter writer=new OutputStreamWriter(out,"UTF-8");
		BufferedWriter bw=new BufferedWriter(writer);
		//向输出流写入数据
		bw.write("你好");
		bw.newline();//换行
		//刷新
		bw.flush();
		bw.close();
	}
文件复制
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;

public class FileDemo {
	// 文件复制
	public static void copyFile() throws IOException {
		String fromPath = "E:\eclipse\eclipse\workplace\ceshi.txt";
		String toPath="E:\eclipse\eclipse\workplace\ok.txt";
		File fileFrom = new File(fromPath);
		File fileTo = new File(toPath);
		if (!fileFrom.exists()) {
			fileFrom.createNewFile();
		}
		// 创建字节输入流
		InputStream in = new FileInputStream(fileFrom);
		// 字节输入流转字符输入流,设置伟utf-8
		InputStreamReader reader = new InputStreamReader(in, "UTF-8");
		// 创建字符流处理类
		BufferedReader br = new BufferedReader(reader);
		String line = br.readLine();// 向下读取一行数据,如果没有返回null
		// 创建字节输出流
		OutputStream out = new FileOutputStream(fileTo);
		// 字节流转字符流
		OutputStreamWriter writer = new OutputStreamWriter(out, "UTF-8");
		BufferedWriter bw = new BufferedWriter(writer);
		while (line != null) {
			bw.write(line);
			bw.flush();
			line = br.readLine();
		}
		// 关闭
		br.close();
		reader.close();
		in.close();
		bw.close();
		
	}

	public static void main(String[] args) {
		try {
			copyFile();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/684116.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号