问题标签 [cultureinfo]
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.
c# - 查找用于将日期解析为字符串的格式
我有一个任意日期,我用CulturInfo.InvariantCulture
. 我使用的 .Net 格式 -"d"
例如 - 现在已被遗忘。
但是我知道字符串没有改变,它仍然有效并且仍然具有不变的文化。我正在寻找MagicParse
函数来提取用于写入格式化日期的格式字符串。
c# - 如何将英文数字转换为阿拉伯数字?
例如,我有这个 C# 代码
现在当前线程正在加载阿拉伯文化。所以结果是这样的
但我不希望 '2010' 和 '19' 是英文(也称为拉丁或西阿拉伯数字) - 我想要像“٢”这样的东阿拉伯数字。
我试过
给出了相同的结果。那么有什么想法吗?
c# - 翻译问题 - 默认显示错误的语言
我刚刚开始第一次编写多语言应用程序。我已经阅读了语言资源文件的概念,我想我明白了主要思想。我试图实现它,并立即发现一个问题:
我已将默认语言字符串输入到 resx 文件中,然后添加了另一个资源文件(例如:UIStrings.en.resx)。由于我的公司不在英国/其他英语国家,我们的申请主要是用我们的语言编写的。因此默认语言是我们的语言(斯洛文尼亚语)。
当我添加 .en.resx 文件并插入正确的翻译并运行程序时,它现在显示英文文本。我想那是因为
尽管
我认为这是因为我正在运行英文版的 Windows(尽管区域选项中的所有属性都正确设置为斯洛文尼亚语设置)。
如何使应用程序以用户语言而不是安装的 Windows 语言显示字符串?
.net - 在正确的文化信息中将十进制格式化为字符串
将十进制数格式化为字符串以在正确的文化信息中显示 UI 的最佳方法是什么?
c# - 字符串到数字的转换和组分隔符
当我尝试使用 Parse 或 TryParse 或 Convert.ChangeType 将字符串转换为数值时,我无法管理系统中定义的千位分隔符:
如果我输入:
它不返回 1234。
如果我想使用组分隔符,我必须输入:
这一次,结果如预期。
但是,我不想强制使用千位分隔符,我只想在系统在全球化设置中指定它时使用它。有没有办法知道是否使用了分隔符(我知道我可以在 中读取组分隔符CultureInfo.CurrentUICulture.NumberFormat.NumberGroupSeparator
)
干杯洛伊克
c# - 如何翻译 CultureInfo 语言名称
我知道获取 CultureInfo 对象的完整语言名称的三种方法。
DisplayName 以安装的 .net 语言给出名称。
NativeName 以“CultureInfos”语言命名。
EnglishName 用英文给出名字(令人惊讶的是......)
因此,对于 CultureInfo de-DE,这给出了(在英语 .net 安装上)
德语
Deutsch
德语
现在我的问题是:有没有办法用另一种语言询问 de-DE 的语言名称?例如,我想要荷兰语中 de-DE 的语言名称(即“Duits”)。
wpf - CultureInfo on a IValueConverter implementation
When a ValueConverter is used as part of a binding, one of the parameters to the Convert
function is a System.Globalization.CultureInfo
object.
Can anyone tell me where this culture object gets its info from?
I have some code that formats a date based on that culture. When i access my silverlight control which is hosted on my machine, it formats the date correctly (using the d/MM/yyyy format, which is set as the short date format on my machine). When i access the same control hosted on a different server (from my client machine), the date is being formatted as MM/dd/yyyy hh:mm:ss - which is totally wrong. Coincidentally the regional settings on the server are set to the same as my client machine.
This is the code for my value converter:
basically, a specific format can be specified as the converter parameter, but if it isn't then the short date pattern of the culture object is used.
.net - 在 ASP.NET 应用程序中为现有的 .NET CultureInfo 创建 NumberFormat
无论选择哪种文化,我都希望以一致的方式在整个应用程序中格式化我的数字。事实上,即使对于我们使用的基本文化来说,它也是“非标准的”。
我想将“{1500.50:c}”格式化为:“1500.50”,但我的文化“nl-NL”的标准是:“€ 1.500,00”。我们没有注册自定义文化的用户权限,因为它是一个 web 应用程序,因此我们正在寻找一个运行时解决方案。
我们想要一个“一劳永逸”的解决方案。不是具有静态(扩展)方法的 Util 类,而是应用程序范围的解决方案,因此我们可以继续使用标准的 .ToString("c") 或 ToString("N") 逻辑,这将遵循我们的自定义规则。这将改变文化的 .NumberFormat,但如何?一切似乎都是只读的。
谢谢。
c# - 如何仅在 .NET 中从语言中获取 DayNames
假设我只有一个国家代码(en、de、fr)并且我需要用这种语言显示工作日。我知道 RegionInfo 和 CultureInfo - 但我找不到解决方案。如果我从(例如)“en”创建国家信息,则其中没有 DateTime 信息。也可以只取第一个匹配的区域。例如 en-US 表示 en 或 de-DE 表示 de。
我不知道 DayNames 是否存在差异,但我知道这几个月有一些差异。de-DE Februar - de-AT Feber——反正我不在乎。如果它可能“有点不同”(看到 Februar 而不是 Feber)的事件 - 它仍然是德语。
这就是我想要达到的目标——星期一写信——去写蒙塔格……
有没有办法仅从语言代码创建区域?
c# - 单击按钮后更改文化信息
我有多语言的asp.net 网站。有一个母版页和default.aspx。
我在母版页中放了两个按钮 - 当我想将语言更改为英语时单击一个,第二个用于波兰语。当然,我想在点击这些按钮后更改语言(所有更改都应该自动出现在页面上)
这是两者的代码:
在 default.aspx.cs 我有 InitializeCulture():
我添加了资源文件,并在一个标签中显示了实际文化:
Welcome.Text = "文化:" + System.Globalization.CultureInfo.CurrentCulture.ToString();
问题是当我运行这个应用程序并单击例如英语按钮(默认语言是波兰语)时,没有效果。如果我第二次单击它或按 F5,则会应用更改,并且在标签中文化显示为 en-US。如果我想将语言改回波兰语(它在第二次单击(或单击并刷新)后起作用),也会发生相同的情况。
我究竟做错了什么?