首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >unix上utf-8的问题

unix上utf-8的问题
EN

Stack Overflow用户
提问于 2013-12-12 11:21:11
回答 2查看 148关注 0票数 0

我的CSV出口有问题。

我创建了如下所示的头文件:

代码语言:javascript
复制
/**
 * @param builder
 */
private void createEntete(StringBuilder builder) {
    List<String> entetes = new ArrayList<String>();
    entetes.add("Date Sélectionnée");
    entetes.add("Nom / Prénom des Agents");
    entetes.add("Entité des Agents");
    entetes.add("Créneaux Mains d'Oeuvre ou de la Tournée");
    entetes.add("N° BDT ou Tournée");
    entetes.add("Rubrique du BDT");
    entetes.add("Type du BDT");
    entetes.add("Objet du BDT ou Intitulé de la Disponibilité RH");
    entetes.add("Compte-rendu du BDT");
    entetes.add("Commune");
    entetes.add("Durée du BDT, Tournée ou de l'Activité");
    entetes.add("Durée du Dépassement");
    entetes.add("Motif du Dépassement");

    for (String valeur : entetes) {
        ajoutDonnee(valeur, builder);
    }

}

我用的是UTF-8。

特殊字符在我的出口中编码很差。我有c而不是é

EN

回答 2

Stack Overflow用户

发布于 2013-12-12 11:43:38

您还没有显示导出/写入数据的代码。

在这段代码中,您可以设置一个合适的编码,例如UTF-8 (尽管示例文本将与CP1252一起工作)。

请注意,必须将读取输出数据的内容设置为使用相同的编码。

因此,你的数据可能实际上写得很好,但当你读它的时候看上去是不对的。

例如,尝试执行以下代码:

代码语言:javascript
复制
public static void main(String[] args) throws IOException {
    Writer writer = new OutputStreamWriter(new FileOutputStream("out_default.txt"));
    writer.write("N° BDT ou Tournée");
    writer.close();

    writer = new OutputStreamWriter(new FileOutputStream("out_utf8.txt"), "UTF-8");
    writer.write("N° BDT ou Tournée");
    writer.close();
}

现在,在打开文件时,尝试打开带有和不带匹配编码集的输出文件。

我的Eclipse默认为CP1252编码。

如果打开out_default.txt文件,我会看到以下内容:

代码语言:javascript
复制
N° BDT ou Tournée

如果打开out_utf8.txt文件,我会看到以下内容:

代码语言:javascript
复制
N° BDT ou Tournée

但是,如果我将编辑器的编码设置为UTF8,那么在out_utf8.txt中我会看到以下内容:

代码语言:javascript
复制
N° BDT ou Tournée
票数 2
EN

Stack Overflow用户

发布于 2013-12-12 11:50:09

注意,在Unicode中,重音字符(例如é)有两种可能的表示形式:

代码语言:javascript
复制
U+00E9 lower case latin letter E with acute
U+0065 U+0301 lower case latin letter E, non spacing diacritical mark acute

请注意,您的IDE或您使用的任何编辑器都可以选择第二种表示,这将导致另一种UTF-8表示。( @tripleee的反馈表明,事实并非如此,尽管这种情况仍有可能发生。)

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20542104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档