【发布时间】:2018-07-06 18:36:48
【问题描述】:
我必须在 Java 中读取 .csv 文件,然后将其从 UTF-8 转换为 iso 8859-1。有什么提示吗?我知道我必须使用 opencsv 库来读取 java 中的文件,但我不知道如何进行转换。 非常感谢所有提示。
【问题讨论】:
-
提示:转至help center 了解如何在此处提问。
标签: java file csv utf-8 opencsv
我必须在 Java 中读取 .csv 文件,然后将其从 UTF-8 转换为 iso 8859-1。有什么提示吗?我知道我必须使用 opencsv 库来读取 java 中的文件,但我不知道如何进行转换。 非常感谢所有提示。
【问题讨论】:
标签: java file csv utf-8 opencsv
我明白了,CSV 文件是 UTF-8 编码的,你想输出一个 ISO-8859-1 格式的文件。
Java 字符串包含字符,无论它们如何来自某种编码源。
所以,分两步:
CSV 阅读器必须配置为解码 UTF-8。我不知道图书馆。如果它具有 Charset 构造函数参数或类似的参数,请在此处提供 UTF-8。如果没有,您可以尝试设置系统属性file.encoding,但要小心,因为这会影响整个 JVM,而不仅仅是 CSV 读取器功能。
在写入输出文件时,您必须将其指定为“ISO-8859-1”。大多数文件写入类都有一个构造函数参数。
当然,ISO-8859-1 仅包含完整 Unicode 的一小部分。因此,如果输出文件包含奇怪的替换字符或如果输入包含来自例如的字符时抛出异常,请不要感到惊讶。希腊字母。
【讨论】: