我被告知编写一个代码来获取字符串文本并检查其编码是否等于我们想要的特定编码。我搜索了很多,但似乎什么也没找到。我找到了一个方法(getEncoding()),但它只适用于文件,这不是我想要的。而且我还被告知我应该使用java库而不是mozilla或apache的方法。 我真的很感谢任何帮助。提前致谢。
最佳答案
你想到的是“国际化”。有类似的库,Loc4j
,但您也可以使用 java.util.Locale
获取此信息在 java 。但一般来说,文本只是文本。它是具有一定值(value)的代币。角色中不存储本地化信息。这就是文件通常在 header 中提供编码的原因。控制台或终端还可以使用某些命令/功能提供本地化。
除非您知道源编码和使用的 token ,否则您猜测另一端使用的编码的能力有限。如果您仍然想这样做,您将需要进入更深层次的领域,例如解密,这种事情通常是使用统计分析来完成的。这反过来又需要关于不同标记的使用的数据库,并且根据文本、数据库和算法的质量,需要特定数量的文本。特别的东西,比如用例如写瑞典语。 US 编码(例如使用 a
表示 å
和 ä
或 o
表示 ö
)将需要更高级的分析。
编辑
由于我收到评论说编码和国际化是不同的实体,因此我将添加一些评论。可以使用不同的编码来简单地使用英语(如一些英语特殊字符)。还可以使用例如 Charset
进行编码。 。然而,对于许多使用不同编码的应用程序来说,使用 Locale
可能仍然很有效,因为该库可以对具有不同编码的文本执行大量操作。
关于java - 如何将字符串类型的值的编码与java中的特定编码进行比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41801392/