在 java 中将国际字符串转换为 \u 代码

2022-08-31 19:44:27

如何将国际(例如俄语)字符串转换为数字(unicode数字),
例如 为?\u\u041e\u041aOK


答案 1

有一个JDK工具通过命令行执行,如下所示:

native2ascii -encoding utf8 src.txt output.txt

例:

来源.txt

بسم الله الرحمن الرحيم

输出.txt

\u0628\u0633\u0645 \u0627\u0644\u0644\u0647 \u0627\u0644\u0631\u062d\u0645\u0646 \u0627\u0644\u0631\u062d\u064a\u0645

如果要在 Java 应用程序中使用它,可以按以下方式包装此命令行:

String pathSrc = "./tmp/src.txt";
String pathOut = "./tmp/output.txt";
String cmdLine = "native2ascii -encoding utf8 " + new File(pathSrc).getAbsolutePath() + " " + new File(pathOut).getAbsolutePath();
Runtime.getRuntime().exec(cmdLine);
System.out.println("THE END");

然后读取新文件的内容。


答案 2

您可以使用 从 。escapeJavaStyleStringorg.apache.commons.lang.StringEscapeUtils