Java IO 字节流 字符流写入、读取、复制文件

分别使用字节流和字符流完成以下程序:

1. 在指定的路径下新建一个 txt 文件 "aura.txt",利用程序在文件中写入如下内容:

"Hadoop(hdfs、mapreduce、yarn)  元老级大数据处理技术框架,擅长离线数据分析,Hbase  分布式海量数据库,离线分析和在线业务通吃,Hive sql 数据仓库工具,使用方便,功能丰富,基于MR延迟大,Sqoop数据导入导出工具,Flume数据采集框架,Storm 实时流式计算框架,流式处理领域头牌框架,Spark 基于内存的分布式运算框架,一站式处理 all in one,新秀,发展势头迅猛"

2. 利用程序读取 aura.txt 文件的内容, 并在控制台打印

3. 利用程序复制 aura.txt 为 aura1.txt

package homework;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

import org.junit.Test;

/**
 * @类名 Hw1.java
 * @作者 songmj
 * @版本 V1.0
 * @日期 2019年6月10日-下午6:21:24
 * @描述
 */
public class Hw1 {
	// 字节流 写入
	@Test
	public static void write(String s, String desc) throws IOException {
		byte []b = s.getBytes();
		FileInputStream fis = new FileInputStream(desc);
		FileOutputStream fos = new FileOutputStream(new File(desc));
		byte []c = new byte[10];
		int len;
		fos.write(b, 0, b.length);
		fos.close();
		fis.close();
	}
	
	// 字节流 读取
	public static void read(String src) throws IOException {
		FileInputStream fis = new FileInputStream(src);
		byte []b = new byte[10];
		int len;
		while((len = fis.read(b))!=-1) {
			System.out.print(new String(b,0,len));
		}
		fis.close();
//		BufferedReader br = new BufferedReader(new FileReader(new File(src)));
//		String line;
//		while((line=br.readLine())!=null) {
//			System.out.println(line);
//		}
	}
	
	//字符流 写入
	public static void write1(String s, String desc) throws IOException {
		FileWriter fw = new FileWriter(desc);
		fw.write(s);
		fw.close();
//		BufferedWriter bw = new BufferedWriter(fw);
//		bw.write(s);
//		bw.flush();
	}
	
	//字符流 读取
	public static void read1(String desc) throws IOException {
		FileReader fr = new FileReader(desc);
		char []c = new char[10];
		int len;
		while((len = fr.read(c))!=-1) {
			String s = new String(c,0,len);
			System.out.print(s);
		}
	}
	
	//复制
	public static void copy(String src, String desc) throws IOException {
		BufferedReader br = new BufferedReader(new FileReader(src));
		BufferedWriter bw = new BufferedWriter(new FileWriter(desc));
		String line;
		while((line = br.readLine())!=null) {
			bw.write(line);
			bw.newLine();
			bw.flush();
		}
		bw.close();
		br.close();
	}
	
	public static void main(String[] args) throws IOException {
		//字节
		String s = new String();
		s = "Hadoop(hdfs、mapreduce、yarn)  元老级大数据处理技术框架,擅长离线数据分析,Hbase  分布式海量数据库,离线分析和在线业务通吃,Hive sql 数据仓库工具,使用方便,功能丰富,基于MR延迟大,Sqoop数据导入导出工具,Flume数据采集框架,Storm 实时流式计算框架,流式处理领域头牌框架,Spark 基于内存的分布式运算框架,一站式处理 all in one,新秀,发展势头迅猛";
		write(s, "aura.txt");
		read("aura.txt");
		
//		//字符
//		String s = new String();
//		s = "Hadoop(hdfs、mapreduce、yarn)  元老级大数据处理技术框架,擅长离线数据分析,Hbase  分布式海量数据库,离线分析和在线业务通吃,Hive sql 数据仓库工具,使用方便,功能丰富,基于MR延迟大,Sqoop数据导入导出工具,Flume数据采集框架,Storm 实时流式计算框架,流式处理领域头牌框架,Spark 基于内存的分布式运算框架,一站式处理 all in one,新秀,发展势头迅猛";
//		write1(s,"aura.txt");
//		read1("aura.txt");
//		
//		//复制
//		copy("D:\\aura.txt","D:\\aura1.txt");
	}

}

 

你可能感兴趣的:(Java笔记,Java)