问题标签 [setlocale]

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 投票
1 回答
2651 浏览

android - 更改应用程序区域设置在android中没有完全生效?

我正在用英语和印尼语两种语言提出申请。为此,我在 res 文件夹中创建了两个字符串文件(values-en 和 values-in)

在我的一项活动中,我选择语言并更改语言环境。我正在使用以下代码执行此操作-

将语言 ID 传递给此方法-

但是在将语言更改为印度尼西亚语之后发生了奇怪的事情。我的一些文本变成了印度尼西亚语,一些变成了英语。

例如-我有两个按钮(提交和上传收据)在活动中。

SUBMIT btn has- 英文是 SUBMIT,印度尼西亚文是 KIRIM

和 UPLOAD RECEIPT btn has- 在英语中它的文本是 Upload Receipt 在印度尼西亚它是 Upload Penerimaan

但是在印度尼西亚提交 btn 文本到Kirim 但 Upload Receipt btn 仍然是“Upload Receipt”。它不会更改为 Upload Penerimaan。

这是如何发生的,因为其他文本会根据语言环境进行更改。此外,我在所有对话框弹出窗口中都面临同样的问题。所有对话框中的文本都保留为英文。

应该做什么?

0 投票
1 回答
463 浏览

c++ - 设置区域设置错误 LNK2019

我正在尝试在 PocketPC 2003 的项目中使用 setlocale 函数。在此之前,我做了一些简单的测试,在单独的控制台应用程序项目中替换了一些字符。在 comsole 应用程序项目中功能运行得非常好,她没有问题。

为第一个项目使用相同的功能我有一些问题。插入<clocale>我有以下错误:

更改<clocale><locale.h>我有链接错误:

<locale.h>并且<clocale>没有与之关联的lib文件。在这种情况下发生了什么?

0 投票
3 回答
2805 浏览

php - PHP setlocale 和 iso-8859-1 编码的问题

我已经使用iso-8859-1编码创建了一个网站,我想用法语显示日期。

这是我用于测试的文件:

当我打开这个文件时,我得到:Thursday 08 August 2013.而不是Jeudi 08 Août 2013.(法语)。

我已经尝试使用UTF-8它并且它可以正常工作,但这不是我想要的......

我检查了安装在我的服务器上的语言包,一切似乎都是正确的:

如果您有解决此问题的任何想法,那将非常酷。

编辑:错别字更正!

0 投票
2 回答
4801 浏览

php - 不是今天的日期/月份的名称在php中的另一种语言

我试图用英语以外的另一种语言在 php 中获取一天的名称。我将语言环境设置更改为setlocale(LC_ALL, 'nl_NL');(返回 true),但日期仍以英文显示。然后我发现你应该使用strftime()它来工作,但这只是以设置的语言返回当前时间,而且我试图在预定义的天数中循环,所以输出将是

Vrijdag 8 月 30 日

Zaterdag 8月31日

宗达格 9 月 1 日

等等

从当前时间戳中减去/添加天数也不是我想做的选择。

0 投票
3 回答
40569 浏览

python - 如何在不同的语言环境中对日期对象进行 strftime?

我在 python 中有一个日期对象,我需要使用 %a (工作日)和 %b (月)代码在 C 语言环境中为遗留系统生成时间戳。但是我不希望更改应用程序的语言环境,因为其他部分需要尊重用户当前的语言环境。有没有办法用特定的语言环境调用 strftime() ?

0 投票
1 回答
2627 浏览

php - 使用 setLocale(LC_TIME) 本地化网站中的周/月名称

我有一个支持这 5 种语言的网站:

  • 英语
  • 法语
  • 德语
  • 意大利语
  • 西班牙语

用户可以根据需要在语言之间进行交换。我有一个页面以文本形式显示工作日日期月份,例如:

1月12日星期一

我的代码是:

在本地主机上,当我在语言之间切换时,周和月切换并且工作正常。但是在服务器上,它总是以英语显示给我。_SESSION['lang'] 工作正常并被更改,所以我不知道为什么当语言环境应该是 fr_FR 时它不显示法语。

可能是因为服务器上没有安装语言环境吗?还是有更好的方法来本地化这些字符串?

编辑:我也尝试在 setlocale 调用中添加“.utf8”,如下所示:

但这也不起作用(在 localhost 和服务器上都不起作用)

0 投票
3 回答
19093 浏览

php - 即使存在语言环境,PHP setlocale 也无法正常工作

问题已解决(见下文)

我已经在我的服务器上生成了语言环境,我已经确认它们存在(我的语言环境 -a 在下面提供),但是当我使用时:

它根本不起作用。

样本:

结果:

locale -a (显示 fr 语言环境):

感谢您的帮助!

0 投票
1 回答
582 浏览

macos - 为什么我不能在 Mac OSX 上设置阿拉伯语言环境(如“ar_SA”)

当我调用 setlocale(LC_ALL, "ar_SA") 时,它返回 "C"。即使我期待它返回“ar_SA”。如果 setlocale(LC_ALL, "ar_SA") 成功,它将返回 "ar_SA"。

我找到了原因。我的 Mac OSX 系统的 /usr/share/locale 中没有“ar_SA”语言环境目录。

我正在使用 gettext 函数。我应该将语言环境更改为“ar_SA”。

  1. 如何将“ar_SA”语言环境目录安装到我的 Mac 中?
  2. 阿拉伯国家的 Mac 系统是否包含 /usr/share/locale/ar_* 之类的阿拉伯语言环境目录?
  3. 有什么解决办法吗?

谢谢你。

0 投票
0 回答
102 浏览

c++ - 用于 Boost 的不同 unicode 脚本的 POSIX 语言环境

我正在使用 Boost Ofstream 进行 Unicode std::string 输出。我坚持使用正确的语言环境(Boost)/编码来支持所有语言(在所有 Unicode 版本高达 6.3 中)。该代码的目标是在 VS2010 和 GCC 4.8 上编译

我试图了解来自不同编译器的不同 Unicode 版本、编码、语言环境支持。

0 投票
3 回答
2829 浏览

php - 即使平台中的语言环境可用,setlocale php 函数也会返回 false

我在云平台上工作,服务器是 Apache。

在其中一个站点实例中,php 脚本 setlocale(LC_ALL, "en_GB.utf8"); 总是返回假。

当我执行 locale -a 时,可以在平台中找到这个 locale,“en_GB.utf8”。还注意到 , setlocale(LC_ALL, 0); 返回“C”。

这里 PHP/Apache 似乎不知道底层平台语言环境。有人可以建议我以防万一有什么问题吗?