问题标签 [globalization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
3435 浏览

c# - 浮点数解析:是否有 Catch All 算法?

多元文化编程的有趣部分之一是数字格式。

  • 美国人使用 10,000.50
  • 德国人使用 10.000,50
  • 法国使用 10 000,50

我的第一种方法是获取字符串,将其向后解析,直到遇到分隔符并将其用作小数分隔符。这样做有一个明显的缺陷:10.000 会被解释为 10。

另一种方法:如果字符串包含 2 个不同的非数字字符,则使用最后一个作为小数分隔符并丢弃其他字符。如果我只有一个,请检查它是否多次出现,如果出现则丢弃它。如果它只出现一次,请检查它后面是否有 3 位数字。如果是,则丢弃它,否则,将其用作小数分隔符。

显而易见的“最佳解决方案”是检测用户的文化或浏览器,但如果您有一个使用 en-US Windows/浏览器的法国人,这将不起作用。

Double.(Try)Parse().net 框架是否包含一些比尝试自动检测数字格式更好的神秘黑魔法浮点解析器?

0 投票
7 回答
1279 浏览

.net - 本地化日期格式描述符

本地化日期格式描述符的最佳方法是什么?

任何来自不使用 mm/dd/yyyy 格式的文化的人都知道,必须以这种格式输入日期很烦人。.NET 框架提供了一些非常好的本地化支持,因此根据用户文化解析日期很简单,但您通常还希望显示有关所需格式的有用提示(特别是区分 yy 和 yyyy 可在大多数文化)。

以对大多数用户有意义的方式执行此操作的最佳方法是什么(例如,dd/M/yyy 令人困惑,因为大小写的变化以及一个和两个字母之间的切换)。

0 投票
13 回答
5083 浏览

localization - 处理存储中的时区?

将所有内容存储在 GMT 中?

以嵌入偏移量输入的方式存储所有内容?

每次渲染时都要进行数学运算吗?

显示相对时间“1 分钟前”?

0 投票
6 回答
13303 浏览

database - 在数据库中存储国际地址的“最佳”方式是什么?

在数据库中存储国际地址的“最佳”方式是什么?以模式的形式回答,并解释您选择规范化(或不规范化)方式的原因。还要解释你为什么选择每个字段的类型和长度。

注意:您决定您认为哪些字段是必要的。

0 投票
4 回答
646 浏览

c# - 全球化架构

我需要将电子商务解决方案的产品存储在数据库中。每个产品都应该有描述性信息,例如名称、描述等。

我需要将任何产品本地化为 x 种语言。

到目前为止,我所做的是制作任何应该本地化的列,nvarchar(MAX)然后我存储一个 XML 字符串,如下所示:

当我将它从数据库加载到我的业务逻辑对象中时,我将 XML 字符串解析为Dictionary<string, string>关键是文化/语言代码的地方。

因此,当我想显示产品名称时,我会这样做:

有没有人有更好的解决方案?

0 投票
7 回答
2905 浏览

asp.net - 全球化 asp.net 应用程序需要了解什么?

我正在编写一个 asp.net 应用程序,该应用程序需要本地化到北美以外的几个地区。我需要做些什么来为这种全球化做准备?学习如何编写面向世界的应用程序的前 1 到 2 个资源是什么?

0 投票
9 回答
4262 浏览

c# - 在 C# 中解析确切日期不应强制您创建 IFormatProvider

如果我错了,请有人纠正我,但是在 C# 中解析 yyyy/MM/dd(或其他特定格式)日期应该

但不,C# 强制您创建一个 IFormatProvider。

是否有一种 app.config 友好的设置方式,所以我不需要每次都这样做?

0 投票
4 回答
9134 浏览

wpf - 本地化 WPF 应用程序的最佳方法是什么,没有 LocBAML?

似乎没有本地化 WPF 应用程序的好方法。MSDN 似乎认为用x:Uid's 乱扔我的 XAML,生成 CSV 文件,然后生成新的程序集(使用他们的示例代码!)就是答案。更糟糕的是,此过程没有解决如何本地化图像、二进制 blob(例如 PDF 文件)或嵌入代码中的字符串。

那么,您如何本地化一个应用程序:

  1. 包含几个程序集
  2. 包含需要本地化的图像和其他二进制 blob(例如:PDF 文档)
  3. 具有不在 XAML 中的字符串数据(例如MessageBox.Show("Hello World");:)
0 投票
5 回答
1298 浏览

.net - 如何让我的 .NET 应用程序支持不同的语言

我正在编写的应用程序几乎完成了,我希望说不同语言的人使用它。

我不知道从哪里开始,全球化和文化在编程方面有什么区别?

如何使用不常见的短语,例如“此应用程序旨在执行此操作”而不是文件、打开、保存等……并将它们变成西班牙语?

非常感谢 :-)

0 投票
21 回答
308178 浏览

c# - 如何检测文本文件的编码/代码页

在我们的应用程序中,我们接收来自不同来源的文本文件(.txt.csv等)。阅读时,这些文件有时包含垃圾,因为这些文件是在不同/未知的代码页中创建的。

有没有办法(自动)检测文本文件的代码页?

detectEncodingFromByteOrderMarks构造函数上的,StreamReader适用于UTF8 和其他 unicode 标记的文件,但我正在寻找一种方法来检测代码页,例如ibm850, windows1252


感谢您的回答,这就是我所做的。

我们收到的文件来自最终用户,他们对代码页一无所知。接收者也是最终用户,到目前为止,这就是他们对代码页的了解:代码页存在,而且很烦人。

解决方案:

  • 在记事本中打开接收到的文件,查看一段乱码。如果有人叫弗朗索瓦什么的,用你的人类智慧你可以猜到这一点。
  • 我创建了一个小应用程序,用户可以使用它打开文件,并输入用户知道在使用正确代码页时它将出现在文件中的文本。
  • 循环遍历所有代码页,并使用用户提供的文本显示给出解决方案的代码页。
  • 如果弹出更多 as 一个代码页,请要求用户指定更多文本。