【问题标题】:Is it possible to set the format of numbers for ASP Classic and MYSQL across multiple languages?是否可以跨多种语言设置 ASP Classic 和 MYSQL 的数字格式?
【发布时间】:2018-05-14 14:09:38
【问题描述】:

我有一个处理多种语言的经典 ASP(VBscript) 站点。为此,我将 SetLocale 设置为用户需要的语言。例如:

SetLocale "zh"

但是,从 MYSQL 数据库返回的数字会以不同的格式返回,具体取决于区域设置。 English Locale (en) 返回一个数字为 1.62,Spanish Locale (es) 返回一个数字为 1,62

这会对代码造成严重破坏,因为西班牙语 (1,62) 中的逗号绝对会破坏其他功能或使用逗号起重要作用的 Highcharts。在所有地方编写替换函数代码既危险又低效。

有没有办法保留 SetLocale(用于日期格式、月份名称等),同时仍强制数字遵循特定的区域设置或格式(在我的情况下为 1.62)?

非常感谢。

【问题讨论】:

    标签: mysql asp-classic multilingual


    【解决方案1】:

    是的!你正在寻找LCID

    我通常通过在Session_OnStart事件上的会话中设置它来使用它,将Session.LCID设置为ID(例如1033)。 More about Session.LCID.

    例子:

    session.LCID = 1031
    Response.Write now() & "<br>"
    session.LCID = 1033
    Response.Write now() & "<br>"
    

    返回:

    14.05.2018 13:00:44
    5/14/2018 1:00:44 PM
    

    【讨论】:

    • 您是说我可以设置日期的区域设置,以便以他们的语言和格式显示日期,同时仍然能够以我需要的格式格式化数字? IE。西班牙日期会有西班牙名字,但数字都是 X.XX(而不是 X,XX)?
    • 你设法让这个工作@Elad?我正在做一个类似的项目。
    • 不,它太复杂了。我创建了手动功能以进行控制。上述解决方案是正确的,但我们正在处理一个古老的庞然大物,必须手动解决。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-15
    • 1970-01-01
    • 1970-01-01
    • 2014-04-06
    • 1970-01-01
    • 1970-01-01
    • 2017-08-01
    相关资源
    最近更新 更多