用IO流的知识将两个文件写到一个文件中(设置字符编码)

来源:互联网 发布:知已唯美图片 编辑:程序博客网 时间:2024/06/06 07:37
1、把a.txt文本文件(gbk)和b.ttt文本文件(utf-8)的内容读取出来,

把a.txt内容加b.ttt内容一起写到c.txt文件(gbk),先写a再写b。


public class Test1 {public static void main(String[] args) {demo1();}private static void demo1() {File fileIn=new File("src\\day18\\a.txt");File fileIn1=new File("src\\day18\\b.ttt");File fileOut=new File("src\\day18\\c.txt");Reader bis=null;Reader bis1=null;Writer bos=null;try {bis=new InputStreamReader(new FileInputStream(fileIn),"bgk");bis1=new InputStreamReader(new FileInputStream(fileIn1),"utf-8");bos=new OutputStreamWriter(new FileOutputStream(fileOut),"bgk");char[] buff=new char[512];int len;while ((len=bis.read(buff))!=-1) {bos.write(buff,0,len);}while ((len=bis1.read(buff))!=-1) {bos.write(buff,0,len);}bos.flush();System.out.println("copy完成");} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}finally{IoCloseUtil.close(bos,bis1,bis);}}}class IoCloseUtil {public static void close(Closeable ...clsObjs){for (Closeable clsObj : clsObjs) {if(clsObj!=null){try {clsObj.close();} catch (IOException e) {e.printStackTrace();}}System.err.println("关闭的对象:"+clsObj);}}}


0 0
原创粉丝点击