点网和 Java 文化代码
Posted
技术标签:
【中文标题】点网和 Java 文化代码【英文标题】:Dot Net and Java Culture Codes 【发布时间】:2008-11-10 18:08:14 【问题描述】:我的任务是为我们的应用程序文化信息生成一个查找表。我需要为其生成数据的列是:
点网代码 版本 文化名称 国家/地区名称 语言名称 Java 国家/地区代码 Java 语言代码 ISO 国家代码 Iso 语言代码我找到了全球化名称空间,但我确定有人问过同样的问题,或者已经有一个可用的表。
感谢您的帮助
【问题讨论】:
AFAIK,Java 不使用专有的语言/国家代码集,那么 Java 国家/语言代码是什么意思? 嗯,我的意思是,对于 .NET,我们有“en-us”,Java 是否有类似类型的代码? 是的,但是 Java 使用 ISO 代码 java.sun.com/j2se/1.5.0/docs/api/java/util/Locale.html 【参考方案1】:Java 使用 2 个字母的 ISO 国家和语言代码。我建议去掉查找表中的“Java Country Code”和“Java Language Code”字段,因为它们是多余的。
我假设无论您在哪里获得 ISO country 和 language 代码,都会找到它们对应的英文名称。但是,如果您需要,Java Locale API 还会为您提供国家和语言的本地化名称。 (即,美国在日本叫什么?)
例如,您可以这样做:
Locale l = Locale.ITALY;
System.out.println(l.getDisplayCountry() + ": " + l.getDisplayLanguage());
System.out.println(l.getDisplayCountry(l) + ": " + l.getDisplayLanguage(l));
在美国英语语言环境中运行打印:
Italy: Italian
Italia: italiano
请注意,您可以从 Locale 类中获取 3 个字母的 ISO 代码,但在构建它们时,请务必只使用 2 个字母的代码。
【讨论】:
【参考方案2】:这很奇怪,我上次访问此页面时,有人殴打我发布指向本地化 Java 参考的链接。
但是,由于他们的帖子已经消失,这是我在他们击败我之前所写的内容。
Java 使用两个 ISO 标准进行本地化,java,util.Locale。
2 字母 ISO-639 用于语言。 2 个字母 ISO-3166 代表国家/地区。【讨论】:
【参考方案3】:Java 使用语言环境来存储这些信息。您需要的大部分信息都可以在 Sun 的Internationalization 页面上找到。 Java 使用类似于“en-us”语法的语法,但是它不是使用连字符而是用下划线来描述。
【讨论】:
【参考方案4】:我猜你的意思是本地化或国际化或 i18n。
试试这个教程:http://java.sun.com/docs/books/tutorial/i18n/index.html
祝你好运, 兰迪·施泰格鲍尔
【讨论】:
以上是关于点网和 Java 文化代码的主要内容,如果未能解决你的问题,请参考以下文章