java - 在 System.out 中打印阿拉伯语或其他字符集

标签 java character-encoding arabic

我正在尝试打印带有阿拉伯字符的字符串:

private static void print(String msg, Object... args) {
    try {
        PrintStream ps = new PrintStream(System.out, true, "ISO-8859-6");
        ps.println(String.format(msg, args));
    } catch (UnsupportedEncodingException error) {
        System.err.println(error);
        System.exit(0);
    }
}

但是,我从 Eclipse 日志控制台看到阿拉伯字符显示为一系列此类字符 èååêÒÉ

我的代码中可能缺少什么?

最佳答案

试试这个:

private static void print(String msg, Object... args) {
    try {
        PrintStream ps = new PrintStream(System.out, true, "UTF-8");
        ps.println(String.format(msg, args));
    } catch (UnsupportedEncodingException error) {
        System.err.println(error);
        System.exit(0);
    }
}

public static void main (String[] args) throws UnsupportedEncodingException {
    String arabicString = "كيف حالك";
    print(arabicString);
}

关于java - 在 System.out 中打印阿拉伯语或其他字符集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16644247/

相关文章:

java - 在下面的代码中是否可以将长数据类型转换为字符串数据类型?

java - 在 Elasticsearch 中将分析器应用于嵌套数据

java - 从 US-ASCII 编码字符串获取 UTF-8 编码

mysql - 确定 MySQL 中的默认数据库字符集和排序规则

java - 在 Windows Server 2012 中为 Tomcat 7.0 设置堆大小(以 GB 为单位)

java - 如何创建从 Java 调用的深入报告?

utf-8 - 无效的 UTF-8 字节

java - 如何将阿拉伯语单词保存到oracle数据库中?

java - 试图在 Java 中显示阿拉伯字符

Lucene 2.2 阿拉伯语分析器