## 需求
读取指定文件(E:/0work/test007.txt), 并写到另外一个指定的位置(E:/0work/test008.txt)
## 代码实现
1, 根据路径读取指定文件
/**
* @param fileUrl 已有文件的路径
* @return 文件内容
*/
public String readFileByUrl(String fileUrl) {
File file = new File(fileUrl);
BufferedReader br = null;
StringBuilder sb = new StringBuilder("");
try {
//GBK解决中文乱码问题
br = new BufferedReader(new InputStreamReader(new FileInputStream(file), "GBK"));
String b = null;
sb = new StringBuilder();
while((b = br.readLine()) != null){
System.out.println(b);
sb.append(b);
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return sb.toString();
}
2, 将读取的内容写到指定位置
/**
* @param resource 文件内容
* @param fileUrl 指定写到某位置
*/
public void writeToFile(String content, String fileUrl) {
File file = new File(fileUrl);
BufferedWriter bw = null;
try {
bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file), "GBK"));
bw.write(content);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
3, 测试效果
public static void main(String[] args) {
IOTest io = new IOTest();
String fileUrl = "E:/0work/test007.txt";
String fileContent = io.readFileByUrl(fileUrl);
String url2 = "E:/0work/test008.txt";
io.writeToFile(fileContent, url2);
}