java读写中文内容的文件

来源:互联网 发布:java程序员需要看的书 编辑:程序博客网 时间:2024/05/22 14:32

对于包含中文内容的excel文件,要把data导入database。我会先把其存为csv,然后用java写个程序生成insert sql script,但用java读取该csv时会出现乱码,其中一个原因就是该csv文件没有以utf-8形式保存。

 

那么做法应该是:

1. save excel file as csv

2. 把eclipse encoding设置为"utf-8"(必须的)

3. 在eclipse里创建一个csv file

4. 用notepad打开步骤1的csv,然后select all and copy to 步骤3的csv file里,并保存

5. 用下列代码来读取eclipse创建的csv并写入到一个file里

 

            OutputStreamWriter write = new OutputStreamWriter(
                    new FileOutputStream(new File("docs/output.csv")), "UTF-8");
            File file = new File("docs/five_choice.csv");
            reader = new BufferedReader(new InputStreamReader(
                    new FileInputStream(file), "UTF-8"));
            String line = null;
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
                write.write(line);
            }
            reader.close();
            write.close();
注:如果没有步骤3和4,即使用上述代码读出来的也可能是乱码

原创粉丝点击