代码功能:
Java实现文本内容读取以及写入,两者结合可以实现文件的拷贝。供学习的朋友参考。
工具:IntelliJ IDEA
文本内容读取代码如下:
package testIO;
import java.io.*;
/**
* 功能:实现从E:/a.txt中读取文本内容
* 编码:
* GBK:中文占2个字节
* UTF-8:中文占3个字节
* BufferedReader:创建一个使用默认大小输入缓冲区的缓冲字符输入流
* InputStreamReader:将字节流转换为字符流处理。转换流,是字节流和字符流之间的桥梁
* Created by Administrator on 2017/9/23.
*/
public class TestBR {
public static void main(String[] args) {
String result =getFile(new File("E:/a.txt"));
System.out.println(result);
}
public static String getFile(File file) {
InputStreamReader isr = null;
FileInputStream fis = null;
BufferedReader br = null;
StringBuilder sb=new StringBuilder();
try {
fis = new FileInputStream(file);//基本流
isr = new InputStreamReader(fis, "utf-8");//可以一次读取一个中文字符
br = new BufferedReader(isr);//创建一个使用默认大小输入缓冲区的缓冲字符输入流
String str = null;
while ((str = br.readLine()) != null) {//一读读一行
sb.append(str);
// sb.append("\r\n");设置输出分行
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (br != null) {
br.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return sb.toString();
}
}
文本内容写入
代码如下:
package testIO;
import java.io.*;
/**功能:实现把文本内容写入到E:/a.txt文件中
* PrintWriter:一写,写一行字符
* Created by Administrator on 2017/9/23.
*/
public class TestPrintWriter {
public static void main(String[] args) {
PrintWriter pw=null ;
try {
pw=new PrintWriter(new OutputStreamWriter(new FileOutputStream(new File("E:/a.txt"),false),"utf-8"));//默认false文件覆盖,true表示后面添加,不覆盖已有内容
pw.println("测试");
pw.println("gava学习");
pw.println("测试");
}
catch (FileNotFoundException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} finally {
if(pw!=null)
{
pw.close();
}
}
}
}