在.NET CultureInfo中,System.Globalization命名空间中有类.它有两个类似的属性,都返回CultureInfo类型的值:CurrentCulture和CurrentUICulture.
他们之间有什么区别?
我何时以及为何使用哪一个?
在我们的应用中,我们收到的文本文件(.txt,.csv从不同的来源,等等).在阅读时,这些文件有时会包含垃圾,因为文件是在不同的/未知的代码页中创建的.
有没有办法(自动)检测文本文件的代码页?
的detectEncodingFromByteOrderMarks,对StreamReader构造,工程UTF8 和其他的Unicode标文件,但是我正在寻找一种方法来检测代码页,像ibm850,windows1252.
谢谢你的回答,这就是我所做的.
我们收到的文件来自最终用户,他们没有关于代码页的线索.接收者也是最终用户,到目前为止,这是他们对代码页的了解:代码页存在,并且令人讨厌.
解:
我想将我的JVM的默认语言环境设置为fr_CA.有什么可能的选择呢?
我只知道一个选项 Locale.setDefault()
本地化ASP.NET MVC应用程序的最佳做法是什么?
我想介绍两种情况:
在第一种情况下你应该选择某种基于视图的东西,比如〜/ View/EN,〜/ View/FI,〜/ View/SWE或者其他什么东西?
那么第二种情况,只需通过Web.config进行基于应用程序的配置,并将这些不同的语言指向不同的URL?
我是一个拥有20多名开发人员的团队成员.每个开发人员都在一个单独的模块上工作(接近10个模块).在每个模块中,我们可能至少有50个CRUD表单,这意味着我们目前有近500个添加按钮,保存按钮,编辑按钮等.
但是,因为我们想要使我们的应用程序全球化,所以我们需要能够在我们的应用程序中翻译文本.例如,无处不在,单词add应该成为法国用户的焦点.
我们到目前为止所做的是,对于UI或表示层中的每个视图,我们都有一个关键/值对翻译的字典.然后在渲染视图时,我们使用此字典翻译所需的文本和字符串.然而,这种方法,我们已经有500 个字典附近的500个添加.这意味着我们已经违反了DRY委托人.
另一方面,如果我们集中常见的字符串,比如将add添加到一个地方,并要求开发人员在任何地方使用它,我们就会遇到不确定字符串是否已经在集中式字典中定义的问题.
另一个选择可能是没有翻译词典并使用谷歌翻译,Bing翻译等在线翻译服务.
我们遇到的另一个问题是,一些处于准时交付项目压力下的开发人员无法记住翻译密钥.例如,对于添加按钮的文本,开发人员使用了add,而另一个开发人员使用了new,等等.
什么是应用程序的字符串资源的全球化和本地化的最佳实践或最着名的方法?
javascript globalization translation localization client-side
我希望在我的Oracle数据库中该列是VARCHAR2.
美国拉链是9.
加拿大人7岁.
我认为32个字符是合理的上限
我错过了什么?
[编辑] TIL:12是这个问题的合理答案感谢所有贡献的人.
可能重复:
本地化和国际化,有什么区别?
I18n/L10n/G11n对我来说都是平等的本地化,但人们不断在这些方面做出区分,尤其是在企业和市场营销方面,但我没有看到这三个任务从程序员的角度来看是不是一回事,每一个都有特殊要求吗?对程序员解释这些不涉及全球市场的术语有什么诚实的程序员,换句话说,当翻译成开发(编码)软件时,这三个术语背后的细节差异是什么?
谢谢!
在Web.config文件中使用全球化culture ="da-DK"时,jQuery验证不起作用.
在丹麦,当我们为产品写价格时,我们使用符号19,95而不是美国19.95的方式,这给了我一个问题,我无法解决.
我已经启动了VS2010,新的MVC 3项目,添加了一个homeController,一个Product类和一个简单的标准编辑视图,错误已经存在.
产品类别:
public class Product
{
public string name { get; set; }
public string itemNo { get; set; }
public decimal price { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
HomeController的:
public class homeController : Controller
{
public ActionResult Index()
{
var product1 = new Product { name = "Testproduct", itemNo = "PRD-151541", price = 19 };
return View(product1);
}
}
Run Code Online (Sandbox Code Playgroud)
索引视图:
@model WebUI.DomainModel.Product
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
<legend>Product</legend>
<div class="editor-label"> …Run Code Online (Sandbox Code Playgroud) 多文化编程的一个有趣部分是数字格式.
我的第一种方法是取字符串,向后解析它,直到我遇到一个分隔符并将其用作我的小数分隔符.有一个明显的缺陷:10.000将被解释为10.
另一种方法:如果字符串包含2个不同的非数字字符,请使用最后一个作为小数点分隔符并丢弃其他字符.如果我只有一个,检查它是否多次出现并丢弃它,如果有的话.如果只出现一次,请检查它后面是否有3位数字.如果是,则丢弃它,否则,将其用作小数分隔符.
显而易见的"最佳解决方案"是检测用户的文化或浏览器,但如果你有一个使用en-US Windows /浏览器的法国人,这不起作用.
.net Framework是否包含一些神秘的黑魔法浮点解析器,比Double.(Try)Parse()尝试自动检测数字格式更好?
globalization ×10
.net ×4
localization ×4
c# ×2
asp.net ×1
asp.net-mvc ×1
client-side ×1
culture ×1
cultureinfo ×1
database ×1
encoding ×1
java ×1
javascript ×1
jquery ×1
oracle ×1
postal-code ×1
text ×1
translation ×1
validation ×1