使用字节流读写中文字符

package com.zzu119.unit3;
/**
 * 读写中文字符
 */
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class WriteAndReadbyInputstream {

    public static void main(String[] args) {
        // 定义一个文件
        File file = new File("D:/testjava/R&W.txt");
        System.out.println("文件的名字:" + file.getName());
        // 写入目标文件一段字符
         String str ="中华人民共和国万岁!";
//        String str = "hello java!";
        byte[] data = str.getBytes();
        try {
            FileOutputStream fos = new FileOutputStream(file);
            fos.write(data, 0, data.length);
            fos.close();
            System.out.println("数据已经写入文件!");
            FileInputStream fis = new FileInputStream(file);
            int datas;
            String strtemp="";//字符串变量
            System.out.println("文件中数据为:");
            while ((datas = fis.read()) != -1) {
//                System.out.print((char) datas);
                strtemp+=(char)datas;
            }
            System.out.println(new String(strtemp.getBytes("ISO-8859-1")));    //中文字符显示String对象,使用字符集ISO-8859-1
            fis.close();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

}

posted on 2015-09-12 19:09  菜鸟Z  阅读(298)  评论(0编辑  收藏  举报

导航