java - Java文件写入中的特殊字符编码(PC8)

标签 java character-encoding

我需要用Java以PC8字符编码编写一个文件。如何将“自定义”字符集应用于(文本)文件?

这就是我正在尝试做的事情:

    try {     
        writer = new BufferedWriter(new OutputStreamWriter(
              new FileOutputStream("test.txt"), "utf-8")); // obviously need to change this

        String info = "#TEST \"test åäö\"";
        writer.write(info);

        writer.close();

    } catch (Exception e) {
      System.out.println(e);
    } 

所以我需要知道是否可以用特殊的字符编码编写,我需要做什么?在编码中指定“PC-8”或“PC8”不起作用。

最佳答案

我在写问题本身时找到了答案。以下是 Java 支持的字符编码列表,以及如何在我在问题中提供的代码块中指定它们:http://docs.oracle.com/javase/8/docs/technotes/guides/intl/encoding.doc.html

所以这对我有用:

writer = new BufferedWriter(new OutputStreamWriter(
              new FileOutputStream("test.txt"), "ibm-437"));

在我的案例中,导致问题的原因是 Google 充斥着有关 UTF-8 字符编码的问题。此外,PC8并不是字符编码的正式名称,因此我无法找到该名称所需的信息。希望这有助于解决编码问题。

关于java - Java文件写入中的特殊字符编码(PC8),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24759279/

相关文章:

character-encoding - 精通编码的 grep 替代品?

java - 如何使我的 ListView 行看起来像 Twitter 应用程序 [屏幕截图]?

java - 从ElasticSearch获取指定字段

java - 使用 Spring 和 Hibernate 以及 Tomcat 在无状态环境中实现 Multi-Tenancy

java - 在 NetBeans 中将 JSP 保存为 UTF-8

Java OutputStreamWriter 默认字节顺序

sql - mysqli.reconnect = ON 更改连接编码?

MySQL 在 LOAD DATA 操作期间将 eszett 字符视为 "ß"

java - 如果你锁定了一个对象,你是否锁定了它的所有方法?

java - 将 XML 数据(文件)绑定(bind)到 android 中的 GridView ?