当前位置: 首页 > 知识库问答 >
问题:

更改日期格式化程序的语言环境

时宾实
2023-03-14

我在我的应用程序中使用日期格式化程序来显示一些日期。但我希望这个日期以阿拉伯语显示。所以我试图像这样改变格式化程序的区域设置:

var now = new DateTime.now();
var formatter = DateFormat.yMMMd("ar_SA");
String formatted = formatter.format(now);
print(formatted);

但它不起作用。。

如果我改成这样:

var now = new DateTime.now();
var formatter = DateFormat.yMMMd("en_US");
String formatted = formatter.format(now);
print(formatted);

会工作正常...但我希望日期显示在阿拉伯语...

如何做到这一点?我希望日期是例如١١ يناير ٢٠١٨..怎么办?

共有2个答案

焦阎宝
2023-03-14

确保导入区域性数据

import 'package:intl/date_symbol_data_local.dart';
戴鸿羽
2023-03-14

您需要使用< code > initializedateformating 来获取正确的日期格式化程序,如下所示:

initializeDateFormatting("ar_SA", null).then((_) {
      var now = DateTime.now();
      var formatter = DateFormat.yMMMd('ar_SA');
      print(formatter.locale);
      String formatted = formatter.format(now);
      print(formatted);
    });

或者使用异步等待,您可以:

await initializeDateFormatting("ar_SA", null);
var now = DateTime.now();
var formatter = DateFormat.yMMMd('ar_SA');
print(formatter.locale);
String formatted = formatter.format(now);
print(formatted);

这为我产生了以下输出:

ar
١٢ نوفمبر ٢٠١٨
 类似资料:
  • 确定当前给定区域设置的短日期格式的最佳方法是什么? 例如,如果我的脚本的语言环境设置为荷兰语,我希望以某种方式获得该特定语言环境中使用的短日期格式,它将是: 年月日 如果设置为American,我希望获得美国地区的日期格式: 年月日 等等

  • 问题内容: 我是Java和Android开发的新手,所以这可能是一个愚蠢的问题,但是我已经搜寻了好几天,却找不到解决方案: 我尝试根据用户的语言环境输出a 。 在StackOverflow上搜索使我想到了这一点: 输出: 在我的法语本地电话上。差不多了 我如何也输出 小时,分钟和秒部分 的,使用用户的语言环境?我一直在寻找android文档,但找不到任何东西。 非常感谢。 问题答案: 用 参考:h

  • 我有Date对象的格式 我是怎么做到的?。 我试着用这个代码 当我试着做一个测试时,我会得到这样的结果: 我的问题是在sql将java.util.date更改为java.sql.date时出现的 我解决了这个问题,所以: 和测试:

  • 问题内容: 有没有一种方法可以用Java / Kotlin中的区域设置正确的格式格式化日期和月份(紧凑格式),而不格式化年份?因此,对于英语,应为“ 9月20日”,而对于瑞典语为“ 9月20日”。 为了进行比较,在Cocoa平台上,我可以执行以下操作(在Swift中): 这将正确地扭转局面。Java SDK是否有等效的功能?我一直在尝试使用旧API的各种形式,但都没有成功。 注意: 与这个问题不同

  • 为应用程序创建多语言支持,可以更改应用程序中的语言设置。 至于现在,一切都适用于英语、西班牙语、法语、俄语,但不适用于印地语和汉语。 1) 我以原始语言指定语言名称,但在应用程序中指定,而不是हिन्दी 我能看到“印地语”。 \res \ values hi \数组。xml 2) 选择“印地语”后结束-实际上选择了默认值(英语) \res\values hi\strings。xml .... 在

  • 问题内容: 我在Edittext的addTextChangedListener方法中已自定义,一切正常,但是当我更改语言(语言环境)时,我的addTextChangedListener无法正常工作。 我搜索了我的问题并找到了解决方案: 但我不知道如何使用此代码。 问题答案: 您可以尝试先转换为,然后将其投射到