在Xamarin.Android中,时间格式(“ha”)未本地化为法语

在Xamarin.Android中,时间格式(“ha”)未本地化为法语,android,xamarin,xamarin.android,development-environment,Android,Xamarin,Xamarin.android,Development Environment,我尝试使用SimpleDateFormat在Xamarin.Android中本地化时间格式(AM/PM),如下代码示例: 代码示例: Calendar time = Calendar.GetInstance(Locale.Default); string timeText = new SimpleDateFormat("h a", new Locale("fr")).Format(time.Time).ToLower(); 但它总是只为英语本地化(上午9点)。请建议我是否遗漏了任何本地化字符

我尝试使用
SimpleDateFormat
在Xamarin.Android中本地化时间格式(AM/PM),如下代码示例:

代码示例:

Calendar time = Calendar.GetInstance(Locale.Default);

string timeText = new SimpleDateFormat("h a", new Locale("fr")).Format(time.Time).ToLower();

但它总是只为英语本地化(上午9点)。请建议我是否遗漏了任何本地化字符串的内容。提前感谢。

您错误地为
fr
创建了一个新的
Locale
,要为给定的Locale“France”使用给定的模式和默认的数据格式符号,例如,您可以这样编码:

Android.Icu.Util.Calendar time = Android.Icu.Util.Calendar.GetInstance(Locale.Default);
var format = new SimpleDateFormat("h:mm a", Android.Icu.Util.ULocale.French);
var timetext = format.Format(time.Time);
有关更多信息,请参阅[SimpleDataFormat(字符串模式,
语言环境)](,java.util.Locale))。

你检查过我的答案了吗?有更新吗?@GraceFeng MSFT很抱歉,我尝试了您的代码示例,但时间文本“AM”仍然没有按照特定地区(法国)进行本地化。另外,当我尝试本地化中国地区时间文本“Am/PM”时,根据地区进行本地化。您好,谢谢您的回答,我已经尝试了您的代码片段,它不会工作。但时间文本(Am/Pm)为中国地区本地化。Android.Icu.Util.Calendar time=Android.Icu.Util.Calendar.GetInstance(Locale.Default);var格式=新的SimpleDataFormat(“h:mm a”,Android.Icu.Util.ULocale.Chinese);var timetext=format.format(time.time)@Siva,你是说这个代码适用于中文,但不适用于法语?@Siva,我的错,你能试试
var format=new SimpleDateFormat(“h:mm a”,Android.Icu.Util.ULocale.French)。如果你觉得这个答案很有帮助,请你标记一下这个答案好吗?它似乎和你前面提到的代码var format=new SimpleDateFormat(“h:mm a”,Android.Icu.Util.ULocale.French)一样。我还是遇到了同样的问题。