黑马程序员技术交流社区

标题: 为什么输出会有乱码 [打印本页]

作者: 李铮    时间: 2016-7-24 21:55
标题: 为什么输出会有乱码
想要把输入的int数写入到文件中去,写入的时候回出现乱码,哪位大神帮忙看一下
public static void main(String[] args) throws IOException {
                Scanner sc = new Scanner(System.in);
                FileOutputStream fos = new FileOutputStream("number.txt");
                System.out.println("请输入一个整数,按end结束:");
                while(true){
                        String line = sc.nextLine();
                        if(line.equals("end")){
                                break;
                        }else{
                                fos.write((byte)Integer.parseInt(line));
                        }
                }
                fos.close();
        }


作者: 1208124957    时间: 2016-7-24 23:00
FileOutputStream是字节流   只能一个字节一个字节的读取   可以用OutputStreamWriter将字节流转换为字符流写入,同时指定utf-8编码,  或者将fos.write((byte)Integer.parseInt(line));  改为fos.write(line.getBytes());可以




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2