Articles of 本地化

在Applet中显示中文文本

我们有一个Applet可以显示中文文本。 我们正在为它指定一个字体(Arial),它在Windows和Mac OSX下工作正常。 但在Linux上的Firefox中,中文字符呈现为正方形。 有没有办法解决这个问题? 请注意,我们不能假定客户端上存在特定的字体文件。

什么是国际化和本地化的好介绍和教程?

我公司使用内部开发的软件包来支持国际化/本地化。 但是,这是二十年前开发的,图书馆只限于一个产品线。 我对艺术的地位感兴趣。 Unicode是今天所有国际努力的基本字符集? 人们仍然使用gettext()和家庭吗? 如果使用C ++,我应该专注于该语言的语言环境支持吗? 我已经看了维基百科的国际化和本地化的条目,其中包括其他网站和相关主题的链接。 但是这里有很多,我想要的是一个源代码,尤其是一本书,它可以很好地介绍当前软件领域的Linux / Unix。 如果实现使用C ++,那很好。 例如,几年前,我读了肯伦德的一本名为“ 理解日本信息处理”的书,后来又修改了一本书,“中日韩信息处理” 。 这两个都很有趣,但当然重点是亚洲语言。 是否有关于当前艺术(书面/书面)语言不可知论的书?

奇怪的字符:R和Windows语言环境的交互?

WinXP-x32,R-2.13.0 亲爱的名单, 我有一个问题,(我认为)涉及Windows和R之间的交互。 我试图用夏威夷群岛上的数据刮一张桌子。 这是我的R代码: library(XML) u <- "http://en.wikipedia.org/wiki/Hawaii" tables <- readHTMLTable(u) Islands <- tables[[5]] 输出是(第一组列): Island Nickname > > Islands Island Nickname > > Location 1 HawaiÊ»i[7] The Big 岛19°34°N 155°30°/ 19.567°N 155.5°/ 19.567; -155.5 2毛伊岛[8]谷岛20°48“N 156°20”/ 20.8°N 156.333°W / 20.8; -156.333 3卡霍·奥拉韦[9]目标岛20°33'N 156°36°/°C 20.55°N 156.6°/ 20.55°; -156.6 4拉涅我[10]菠萝岛20°50“N 156°56”/ 20.833°N 156.933°/ 20.833; -156.933 […]

只有当我没有英文string表时,LoadString才起作用

我希望能够以编程方式修改应用程序的语言,或者至less使用控制面板 – >区域和语言选项 – >格式中指定的语言。 如果我添加一个英文string表,做一个法语和德语的副本,并删除英文的一个,我可以编程方式加载法语和德语string之间切换。 如果我保留英文版,无论如何,当我尝试加载德文或法文时,英文string会被加载。 我认为这是一个资源加载程序错误,如果资源加载器忽略SetThreadLocale,如果它find一个与windows ui语言(例如Windows资源pipe理器菜单的语言)相同语言的string表。 我试图将控制面板 – >区域和语言选项 – >格式更改为法语,但没有任何效果。 资源编辑器显示没有附加语言的法语string表,但我的程序仍然总是加载英文string。 将此更改复制到系统帐户也不起作用。 这是我试过的代码: #include "stdafx.h" #include <iostream> #include "windows.h" // this should go to stdafx.h #include "resource.h" // this should not go to stdafx.h using namespace std; int _tmain(int argc, _TCHAR* argv[]) { // 1036 = french, 1031 = german SetThreadLocale(MAKELCID(1036, […]

你可以访问标准的Windowsstring,如“取消”?

我正在build立一个标准的“确定”和“取消”button的Windows对话框。 鉴于Windows在其自己的对话框中使用相同的button文本是有办法让我抓住正确的string使用button? 这样,无论使用哪种语言,我的应用程序都将具有正确的string,而无需我自己将其本地化为大量不同的语言。 我正在使用C#,但可以愉快地使用平台调用来访问OS方法,如果需要的话。 注:是的,我可以很容易地本地化的资源,但我不想要find,必须input十亿个不同的语言string,当它必须在窗口内已经存在。 请不要回答说本地化的应用程序!

Windows中的语言环境列表

在* nix系统上,您可以执行locale -a来获取可用语言环境的列表。 什么是Windows中的等效命令(或动作)? 我在互联网上看到了列表,但其中大多数只是语言环境标签,而不是实际的语言环境名称。 另外,并不是所有的系统都能保证全部安装,对吗? 请注意,我在这里定义的“locale”是“locale string”,即C的setlocale()的第二个参数,它将导致非空的返回值。 程序化的答案也很好,我只是厌倦猜测Windows语言环境名称的蛮力。

如何本地化Windows商店应用程序中的通知和combobox? (C#/ XAML,多语言应用程序工具包)

我有几个与Windowsapp store本地化的问题。 我能够像TextBlock.Text或Button.Content本地化xaml的东西( 我这样做就像这里所示 ),但我不知道如何本地化以下几点: 1)。 在我的combobox中的项目。 <ComboBox x:Name="comboBoxTopAppBar" Width="120" Margin="10,0,0,0" MinWidth="200" SelectedItem="{Binding SelectedStatus, Mode=TwoWay}"> <x:String>Item 1</x:String> <x:String>Item 2</x:String> <x:String>Item 3</x:String> </ComboBox> 2)。 C#代码中的MessageDialogs(无需等待,因为catch块) new MessageDialog("Something went wrong. Please, check your login/password and internet connection.").ShowAsync(); 3)。 Toast通知在C#代码(我正在使用“Windows运行时通过C#”类书籍) ToastNotificationManager.CreateToastNotifier() .Show(new ToastNotification(new ToastTemplate(ToastTemplateType.ToastText01) { Text = {"Fetching your data. Please, wait."}, Duration = ToastDuration.Short, })); 我怎样才能本地化?

本地化的指数表示法?

我试图将数字转换成本地化的string。 对于整数和金钱的价值很简单,因为string只是一系列的数字和数字分组分隔符。 例如: 12 345 678 901 (保加利亚语) 12.345.678.901 (加泰罗尼亚语) 12,345,678,901 (英语) 12,34,56,78,901 (印地语) 12.345.678.901 (弗里斯兰语) 12?345?678?901 (普什图语) 12'345'678'901 (德语) 我使用Windows GetNumberFormat函数格式整数(和GetCurrencyFormat格式货币值)。 但有些数字不能用固定的符号来合理地表示,需要科学记数法 : 6.0221417930×10 23 或更具体地E符号 : 6.0221417930E23 我怎样才能得到科学记数法的本地化版本? 我想我可以使用本地化的数字构造它: 6.0221417930E23 6,0221417930E23 6.0221417930e23 6·0221417930E23 6·0221417930e23 6,0221417930e23 6,,0221417930e23 6.0221417930E+23 6,0221417930E+23 6.0221417930e+23 6,0221417930e+23 6·0221417930E+23 6·0221417930e+23 6,,0221417930e+23 6.0221417930E23 6,0221417930E23 6.0221417930e23 6,0221417930e23 6·0221417930E23 6·0221417930e23 6,,0221417930e23 6.0221417930X10^23 6,0221417930X10^23 6.0221417930×10^23 […]

将“normal”std :: string转换为utf-8

让我们来看看是否可以解释这个没有太多的事实错误… 我正在写一个string类,我想它使用utf-8 (存储在一个std ::string),因为它是内部存储。 我希望它能够将“正常”的std::string和std::wstring作为input和输出。 使用std :: wstring不是一个问题,我可以使用std::codecvt_utf8<wchar_t>将std :: wstring同时转换为std :: wstring。 然而,广泛的search和search后,我还没有find一种方法来转换“正常/默认”C + + std ::string(我假设在Windows使用本地系统本地化?)和utf-8标准: :串。 我想一个select是首先将std :: string转换为std :: wstring,使用std::codecvt<wchar_t, char> ,然后将其转换为utf-8,但是这样看起来相当低效,因为至less如果我理解正确的话,char的前128个值应该直接转换为utf-8而不用转换。 我发现这个类似的问题: C ++:如何将ASCII或ANSI转换为UTF8并存储在std :: string虽然我对这个答案有点怀疑,因为它被硬编码为拉丁文1,我希望这与所有types的本地化是安全的一面。 没有答案涉及提升谢谢,我不想让我的代码库的工作与它的头痛。

find本地化的Windowsstring

我需要find当前版本的Windows正在使用的一些string。 例如,当我创build一个新文件夹时,它最初在英文版Vista上被命名为“新build文件夹”。 我需要以编程方式查找该文件夹将在我可能运行的任何语言和版本的Windows上命名。 任何人有任何想法如何做到这一点? 感谢Morinar – 我也偶然发现了这篇文章。 不幸的是,stringID似乎不是常量 – 它在我的Vista上是30396,这与他们为XP显示的不一样。 所以看起来MS并没有保持稳定。 编辑:看起来这是不可能的…? 这个应用程序运行在德国,荷兰,法国,西class牙,巴西,墨西哥,越南,台湾,中国,日本,韩国,印度,以色列,匈牙利的计算机上…你明白了。 安装所有不同的语言包需要很长的时间,并找出每种语言的“新build文件夹”。 也许最好的select是默认为“新build文件夹”,并让用户更改该值,如果他们想。 我只是希望尽可能多地找出软件,并让用户不要configuration_yet_another_setting_。