/*
事先在当前目录下准备好一个test.txt 的文本文件,要求该文本文件是使用GBK 编码的
多行文本文件。如:
test.txt
窗前明月光
疑是地上霜
举头望明月
低头思故乡
利用字节流+桥转换读入这个文本文件,然后按照行的顺序,以UTF-8 的编码方式,写
到test2.txt 文件中,例:
test2.txt
低头思故乡
举头望明月
疑是地上霜
窗前明月光
*/
import java.io.*;
import java.util.*;
public class D2 {
static void write(String s) throws IOException {
FileWriter fw = new FileWriter("test.txt", true);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(s);
bw.newLine();
bw.close();
}
// 转换为UTF-8存入
static void read() throws IOException {
// 桥转换类 OutputStreamWriter 将字节流转换为字符流
OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream(
"test2.txt", true), "UTF-8");// 转换成UTF-8编码
InputStreamReader isr = new InputStreamReader(new FileInputStream(
"test.txt"), "GBK"); // 源文件的编码为GBK
BufferedReader br = new BufferedReader(isr);
BufferedWriter bw = new BufferedWriter(osw);
String str = null;
while ((str = br.readLine()) != null) {
bw.write(str);
bw.newLine();
}
bw.close();
}
public static void main(String args[]) throws IOException {
String libai = "窗前明月光 疑是地上霜 举头望明月 低头思故乡";
String str[] = libai.split(" ");// 按空格拆分字符串
for (int i = 0; i < str.length; i++)
write(str[i]); // 连续写多次 此时 字节流对象需要为FileOutputStream(String
// path,true)
read();
}
}
事先在当前目录下准备好一个test.txt 的文本文件,要求该文本文件是使用GBK 编码的
多行文本文件。如:
test.txt
窗前明月光
疑是地上霜
举头望明月
低头思故乡
利用字节流+桥转换读入这个文本文件,然后按照行的顺序,以UTF-8 的编码方式,写
到test2.txt 文件中,例:
test2.txt
低头思故乡
举头望明月
疑是地上霜
窗前明月光
*/
import java.io.*;
import java.util.*;
public class D2 {
static void write(String s) throws IOException {
FileWriter fw = new FileWriter("test.txt", true);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(s);
bw.newLine();
bw.close();
}
// 转换为UTF-8存入
static void read() throws IOException {
// 桥转换类 OutputStreamWriter 将字节流转换为字符流
OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream(
"test2.txt", true), "UTF-8");// 转换成UTF-8编码
InputStreamReader isr = new InputStreamReader(new FileInputStream(
"test.txt"), "GBK"); // 源文件的编码为GBK
BufferedReader br = new BufferedReader(isr);
BufferedWriter bw = new BufferedWriter(osw);
String str = null;
while ((str = br.readLine()) != null) {
bw.write(str);
bw.newLine();
}
bw.close();
}
public static void main(String args[]) throws IOException {
String libai = "窗前明月光 疑是地上霜 举头望明月 低头思故乡";
String str[] = libai.split(" ");// 按空格拆分字符串
for (int i = 0; i < str.length; i++)
write(str[i]); // 连续写多次 此时 字节流对象需要为FileOutputStream(String
// path,true)
read();
}
}