标签: localization

本地化枚举描述属性

在.net中本地化枚举描述的最佳方法是什么?

(请参阅为枚举描述示例添加枚举常量的描述)

理想情况下,我想要使用ResourceManager和资源文件的东西,以便它适合应用程序的其他区域的本地化.

.net c# enums localization

36
推荐指数
3
解决办法
3万
查看次数

36
推荐指数
2
解决办法
3万
查看次数

ASP.NET - MVC 3:本地化

我即将为我的MVC3 Web应用程序实现本地化.通过大量的方式搜索我的方式,我不确定实现这个的方式.我发现如何做到这一点:

我找到的第一个选项是使用App_GlobalResources和ViewData以及使用Map Routing进行文化选择.(链接)

其次是在我的项目中创建一个单独的Resources文件夹,并将其构建为Model和View文件夹.然后在这些文件夹中创建资源文件.使用这些资源字符串就像使用Viewbag一样.然后编辑Global.asax以处理文化变化并创建部分视图以允许更改文化.执行此操作的说明非常彻底,因此这可能是最好的选择.(链接)

第三是使用DisplayAttribute和resx文件.这个有点朦胧,我找不到那种信息,这样我才能理解这实际是如何实现的以及它的限制.(链接)

第四是创建一个自定义类来处理资源.这看起来非常花哨,易于实现和使用,但如果它确实有效,则没有找到真正的信息.(链接)

然后我发现了一条警告使用App_GlobalResouces和App_LocalResources的帖子.(链接)

在经历了可能的本地化方式之后.我找不到一种得到普遍认可或接受的方式.这让我思考,其中哪些,或者一些我没有找到,将是在ASP.NET MVC3中实现本地化的最佳方式?

globalization localization internationalization asp.net-mvc-3

36
推荐指数
2
解决办法
2万
查看次数

输入类型编号的本地化

我在Chrome上运行的Web应用程序上工作,我输入了类型number.在我的语言环境中,逗号用于十进制数字,空格用于千位分隔(不那么重要),但是当我将这些字符输入到数字字段中时,它们被简单地删除,有效地增加了一百个金额.

我已经在浏览器设置和页面上设置了语言,但我仍然需要使用句点作为小数.有什么办法可以配置字段来接受逗号吗?

或者,我将不得不使用javascript解决这个问题.我想我可以处理keydown事件并在用户输入时将逗号更改为句点,但这不会给用户带来很好的体验,是吗?那么如何在我的代码中以最小的占用空间实现这一目标呢?

javascript html5 localization

36
推荐指数
4
解决办法
3万
查看次数

Android Lint:如何忽略区域语言环境字符串文件中缺少的翻译警告,该文件故意仅覆盖某些默认翻译?

是否有可能在没有Lint抱怨MissingTranslation的单独资源文件中翻译某些字符串,而不是全部?

例如:我的应用程序的字符串都在res/values/strings.xml中.其中一个字符串是

<string name="postal_code">Postal Code</string>

由于"邮政编码"在美国通常被称为"邮政编码",我想在内容中添加另一个资源res/values-en-rUS/strings.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="postal_code">Zip Code</string>
</resources>
Run Code Online (Sandbox Code Playgroud)

但是,Lint在values/strings.xml中抱怨其他字符串,但在values-en-rUS/strings.xml中没有

我意识到你可以通过tools:ignorevalues/strings.xml中指定来抑制警告.但这是不可取的,因为Lint警告在翻译成另一种语言时实际上很有用.

相反,是否可以在values-en-rUS/strings.xml文件中禁止警告,如在查找缺少的翻译时告诉Lint不要将该文件用作标准?

android translation localization lint android-lint

36
推荐指数
6
解决办法
2万
查看次数

如何使用java.text.MessageFormat格式化小数百分比

我的百分比被默认的java.text.MessageFormat函数截断,如何格式化百分比而不会丢失精度?

例:

String expectedResult = "12.5%";
double fraction = 0.125;

String actualResult = MessageFormat.format("{0,number,percent}", fraction);
assert expectedResult.equals(actualResult) : actualResult +" should be formatted as "+expectedResult;
Run Code Online (Sandbox Code Playgroud)

java text localization

35
推荐指数
3
解决办法
5万
查看次数

什么是土耳其测试?

我在学习代码测试时遇到了"土耳其测试"这个词.我真的不知道这意味着什么.

什么是土耳其测试?为什么这么称呼?

testing localization internationalization turkey-test

35
推荐指数
3
解决办法
1万
查看次数

WinForms应用程序的正确本地化

我有一个WinForms应用程序,我想将其翻译成多种语言.但是,我没有任何本地化WinForms应用程序的经验,我发现有关此主题的非常矛盾的信息.

基本上,我想要的是:

  • 在源代码中,我只想要每种语言一个文件
  • 这个文件在编译时被编译到主应用程序中 - 构建应用程序后没有附属程序集或外部数据文件
  • 用户可以选择语言,我不需要/想要基于操作系统的自动检测
  • 这应该主要包含字符串和整数,但也包含CultureInfo

我见过的大多数解决方案要么每个表单都有一个.resx文件和/或外部附属程序集.

我必须自己动手吗?或者框架中有什么东西吗?

.net Framework 3.5 SP1如果重要的话.

编辑:在大多数情况下,Visual Studio已经提供了我想要的支持,但有两个问题.当我将Form.Localizable设置为true时,我有这个很好的设计器支持,但是这会为每个表单生成一个resx.在InitializeComponent中手动覆盖它的想法失败了,因为它是经常被覆盖的设计者编写的代码.从理论上讲,我只想a)覆盖ComponentResourceManager的创建,将其指向我的全局resx,b)将对ApplyResources的调用更改为将CultureInfo作为第三个参数的重载.

好像我必须在我的构造函数中添加一个函数调用,该函数调用在InitializeComponent()之后调用并覆盖它的行为.这似乎非常低效,但Visual Studio在警告触摸InitializeComponent时是正确的.目前,我确实正在推出自己的WinForms本地化框架......

.net c# localization winforms

35
推荐指数
2
解决办法
3万
查看次数

如何使用适当的cultureinfo将字符串转换为double

我在数据库中有两个nvarchar字段来存储DataType和DefaultValue,我有一个DataType Double,值为65.89875英文格式.

现在我希望用户按照所选的浏览器语言格式查看值(英语中的65.89875应显示为德语中的65,89875).现在,如果用户从德语格式编辑为65,89875(英语为65.89875),而英语浏览器中的其他用户视图则为6589875.

发生这种情况是因为在数据库中它在nvarchar列中存储为65,89875,并且在使用英语文化转换时,它变为6589875,因为它将其视为,分隔符,它是德语的十进制运算符.

如何让这个适用于所有浏览器?

.net c# globalization localization

35
推荐指数
2
解决办法
9万
查看次数

如何将Android字符串资源导入/导出到Excel进行本地化?

我在应用开发中使用Android Studio.我想通过导出/导入Android语言资源(strings.xml)到Excel文件(xlsx)来翻译字符串.最好的方法是什么?

excel android localization android-studio

35
推荐指数
6
解决办法
2万
查看次数