java - 如何使用utf-8导出Excel CSV并读入Java?

标签 java excel csv

我有一个 Excel 电子表格,其中包含许多“中文(zh-TW)”和“英语(en-US)”单词,这些数据需要使用 utf-8 编码导入到数据库表中。 我的第一次尝试是使用 Excel“另存为”功能将数据导出为 CSV。但是,由于Excel不允许更改“另存为”功能的字符编码,因此无法正确读取数据。

最佳答案

经过搜索,我发现完成任务的简单方法如下:

将 Excel 工作表另存为“Unicode 文本 (.txt)”(Excel 采用 UTF16 编码并使用 TAB 分隔每列。 enter image description here

下面是用于读取此 Excel unicode 导出文件内容的 Java 代码片段:

File dataFile = new File("my-unicode-file-exported.txt"));
InputStreamReader isr = new InputStreamReader(new FileInputStream(dataFile), "UTF-16");     
BufferedReader br = new BufferedReader(isr);        

String line = null;
while ((line = br.readLine()) != null) {
    // splits by TAB
    String elements = line.split("\t");

    // process each element
    String element_01 = elements[0];
    String element_02 = elements[1];
    .....   
}

br.close();

关于java - 如何使用utf-8导出Excel CSV并读入Java?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34583675/

相关文章:

linux - 猫 |在 bash 中按名称对 csv 文件进行排序

excel - 日期字段混合(日期和文本)格式

r - 在 R 中,当从另一列中的分隔文本创建列名称时,新列名称仅从第一行分配

java - 如何将 cookie 的值放入 <c :set> from JSTL? 类型的变量中

excel - 在 Excel 2013 中输入 64 位整数

java - 这个部门有什么问题?

excel - 如何删除字符串中的换行符

Java::如何将 Google Drive 中存储的 Excel 文件导入到特定的 Google 电子表格

java - Robocode 机器人与 Drools Expert

java - 将数据从一个页面 POST 到另一页面