学习日志 Day 16
//2020年4月3日21:14:06 磊子
Java Day 15
分析以下需求,并用代码实现
1.将e:\a.txt复制到d:\根目录下(文件路径可自定义)
2.用多种方式实现复制
(1)使用字符流单字符循环复制
(2)使用字符流利用字符数组实现复制
(3)使用高效字符缓冲流实现复制
package com.itheima_6;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
/*
* 分析以下需求,并用代码实现
1.将e:\\a.txt复制到d:\\根目录下(文件路径可自定义)
2.用多种方式实现复制
(1)使用字符流单字符循环复制
(2)使用字符流利用字符数组实现复制
(3)使用高效字符缓冲流实现复制
*/
public class day10Test {
public static void main(String[] args) throws IOException {
//创建输入流对象
FileReader fr = new FileReader("f:\\a.txt");
//创建输出流对象
FileWriter fw = new FileWriter("f:\\b.txt");
//1.使用字符流单字符循环复制,一次一个字符
/*int ch;
while((ch = fr.read())!=-1) {
fw.write(ch);
}*/
//2.使用字符流利用字符数组实现复制 一次一个字符数组
/*char[] ch = new char[1024];
int len;
while((len = fr.read(ch))!=-1) {
fw.write(ch, 0, len);
}*/
BufferedReader br = new BufferedReader(new FileReader("f:\\a.txt"));
BufferedWriter bw = new BufferedWriter(new FileWriter("f:\\b.txt"));
//3.使用高效字符缓冲流实现复制 一次一个字符串
/*String line;
while((line = br.readLine())!=null) {
bw.write(line);
bw.newLine();
bw.flush();
}*/
//4.使用高效字符缓冲流实现复制 一次一个字符数组
/*char[] ch = new char[1024];
int len;
while((len = br.read(ch))!=-1) {
bw.write(ch, 0, len);
//bw.flush();
}*/
//5.使用高效字符缓冲流实现复制 一次一个字符
int ch;
while((ch = br.read())!=-1) {
bw.write(ch);
}
//释放资源
bw.close();
br.close();
fw.close();
fr.close();
}
}
1.把集合中的数据写到文本文件
package com.itheima_6;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
/*
* 1.把集合中的数据写到文本文件
*/
public class day10Test2 {
public static void main(String[] args) throws IOException {
ArrayList<String> array = new ArrayList<String>();
array.add("hello");
array.add("wrold");
//1.把集合中的数据写到文本文件
BufferedWriter bw = bw = new BufferedWriter(new FileWriter("f:\\b.txt"));
for(int x = 0; x<array.size(); x++) {
String s = array.get(x);
bw.write(s);
bw.newLine();
bw.flush();
}
bw.close();
}
}
2.文本文件中的数据读取到集合
package com.itheima_6;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
/*
* 2.文本文件中的数据读取到集合
*/
public class day10Test3 {
public static void main(String[] args) throws IOException {
ArrayList<String> array = new ArrayList<String>();
BufferedReader br = new BufferedReader(new FileReader("f:\\a.txt"));
//2.文本文件中的数据读取到集合
String line;
while((line = br.readLine())!=null) {
array.add(line);
}
br.close();
for(int x = 0; x<array.size(); x++) {
String s = array.get(x);
System.out.println(s);
}
}
}
分析以下需求,并用代码实现
定义一个工具类IOUtils,有以下方法,方法描述如下(以下操作只针对纯文本文件(.txt文件)):
1.copyFile2Dir(String srcFile,String destDir)//复制方法自己选。能实现功能即可
参数String srcFile:要复制的源文件路径
参数String destDir:复制产生的新文件的存储路径(目标路径)
要求:将srcFile文件复制到destDir目标文件中.
package com.itheima_6;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
/*
* 分析以下需求,并用代码实现
定义一个工具类IOUtils,有以下方法,方法描述如下(以下操作只针对纯文本文件(.txt文件)):
1.copyFile2Dir(String srcFile,String destDir)//复制方法自己选。能实现功能即可
参数String srcFile:要复制的源文件路径
参数String destDir:复制产生的新文件的存储路径(目标路径)
要求:将srcFile文件复制到destDir目标文件中.
*/
public class IOUtils {
public void copyFile2Dir(String srcFile,String destDir) throws IOException {
FileReader fr = new FileReader("srcFile");
FileWriter fw = new FileWriter("destDir");
int ch;
while((ch = fr.read())!=-1) {
fw.write(ch);
}
fw.close();
fr.close();
}
}