【发布时间】:2016-01-04 01:43:44
【问题描述】:
我有一个 Excel 电子表格,其中包含许多“Chinese(zh-TW)”和“English(en-US)”单词,这些数据需要导入到具有 utf-8 编码的数据库表中。 我的第一次尝试是使用 Excel“另存为”功能将数据导出为 CSV。但是,由于 Excel 不允许更改“Save-AS”功能的字符编码,因此无法正确读取数据。
【问题讨论】:
我有一个 Excel 电子表格,其中包含许多“Chinese(zh-TW)”和“English(en-US)”单词,这些数据需要导入到具有 utf-8 编码的数据库表中。 我的第一次尝试是使用 Excel“另存为”功能将数据导出为 CSV。但是,由于 Excel 不允许更改“Save-AS”功能的字符编码,因此无法正确读取数据。
【问题讨论】:
经过搜索,我发现完成任务的简单方法如下:
将 Excel 工作表另存为“Unicode 文本 (.txt)”(Excel 以 UTF16 编码并使用 TAB 分隔每列。
下面是 Java 代码 sn-p 来读取这个 Excel unicode 导出文件的内容:
文件 dataFile = new File("my-unicode-file-exported.txt")); InputStreamReader isr = new InputStreamReader(new FileInputStream(dataFile), "UTF-16"); BufferedReader br = new BufferedReader(isr); 字符串线=空; while ((line = br.readLine()) != null) { // 按 TAB 分割 字符串元素 = line.split("\t"); //处理每个元素 字符串 element_01 = 元素[0]; 字符串 element_02 = 元素[1]; ...... } br.close();【讨论】: