【问题标题】:Culture Specific Currency for a given culture给定文化的文化特定货币
【发布时间】:2017-05-24 13:16:15
【问题描述】:

所以我在一个网站上工作,我正在使用以下 Javascript 代码

UsdAmount.toLocaleString(siteCulture,
      {style: 'currency', currency: 'USD'})
CadAmount.toLocaleString(siteCulture,
      {style: 'currency', currency: 'CAD'})

它运行良好,达到预期效果

这样

Culture     Currency    Output
en-us       USD         $123.45
en-us       CAD         CA$123.45
en-ca       USD         US$123.45
en-ca       CAD         $123.45

但是这个功能在 Safari 中不起作用,所以我不能使用它。

所以我想我会在 C# 中的服务器端执行它并传递字符串

但这似乎不起作用,原因有两个

  1. 我不能通过两种文化,一种系统文化和一种货币文化
  2. 以来似乎没有任何作用
    4.ToString("C", new CultureInfo("en-us")) ==> "$4.00"
    4.ToString("C", new CultureInfo("en-ca")) ==> "$4.00"  // No CA$
    

那么关于格式化适用于所有浏览器的货币的任何其他想法?

【问题讨论】:

  • 在服务器端做准备总是一个好主意。可以执行你自己的规则吗?
  • 现在我正在研究正则表达式...问题是我不知道要遵循的国际规则
  • 在使用欧元的国家/地区为 123、45 欧元。这就是我能帮助你的全部(不知道 C 和 Regex ...)
  • 有货币符号,有ISO代码。您是否正在寻找类似 new RegionInfo("en-ca").ISOCurrencySymbol 的内容?相关:stackoverflow.com/questions/850673/…

标签: javascript c# currency cultureinfo


【解决方案1】:

如果您在支持 WinRT(Windows 8 或更高版本)的服务器上运行,那么您可以使用 currency formatter 来满足您的需求。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-27
    • 1970-01-01
    • 2016-04-22
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多