Giter Site home page Giter Site logo

Comments (4)

qiuhaotc avatar qiuhaotc commented on July 29, 2024

Same issue, when I do this show down below, my windows 10 default language is zh-cn, seem working fine on en-us language device

 BreakIterator sentenceProto = BreakIterator.GetSentenceInstance(CultureInfo.CurrentCulture);

When I do this show down below, it's working fine:

CultureInfo.CurrentCulture = CultureInfo.InvariantCulture;
var sentenceProto = BreakIterator.GetSentenceInstance(CultureInfo.InvariantCulture);
 at System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[ICU4N.Util.UResourceBundle+RootType, ICU4N, Version=60.0.0.0, Culture=neutral, PublicKeyToken=efb17c8e4f0e291b]].GetOrAdd(System.__Canon, System.Func`2<System.__Canon,RootType>)
   at ICU4N.Util.UResourceBundle.GetRootType(System.String, System.Reflection.Assembly)
   at ICU4N.Util.UResourceBundle.InstantiateBundle(System.String, System.String, System.Reflection.Assembly, Boolean)
   at ICU4N.Util.UResourceBundle.GetBundleInstance(System.String, System.String, System.Reflection.Assembly, Boolean)
   at ICU4N.Util.UResourceBundle.GetBundleInstance(System.String, System.String)
   at ICU4N.Impl.ICUResourceBundle.GetBundle(ICU4N.Impl.ICUResourceBundleReader, System.String, System.String, System.Reflection.Assembly)
   at ICU4N.Impl.ICUResourceBundle.CreateBundle(System.String, System.String, System.Reflection.Assembly)
   at ICU4N.Impl.ICUResourceBundle+<>c__DisplayClass59_0.<InstantiateBundle>b__0(System.String)
   at ICU4N.Impl.SoftCache`2+<>c__DisplayClass1_0[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].<GetOrCreate>b__0(System.__Canon)
   at System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].GetOrAdd(System.__Canon, System.Func`2<System.__Canon,System.__Canon>)
   at ICU4N.Impl.SoftCache`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].GetOrCreate(System.__Canon, System.Func`2<System.__Canon,System.__Canon>)
   at ICU4N.Impl.ICUResourceBundle.InstantiateBundle(System.String, System.String, System.String, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, System.String, System.String, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Globalization.UCultureInfo+DotNetLocaleHelper.GetDefaultCalendar(System.String)
   at ICU4N.Globalization.UCultureInfo+DotNetLocaleHelper.ToUCultureInfo(System.Globalization.CultureInfo)
   at ICU4N.Globalization.CultureInfoExtensions+<>c.<ToUCultureInfo>b__1_0(System.Globalization.CultureInfo)
   at J2N.Collections.Concurrent.Add2Info`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].CreateValue(System.__Canon, System.__Canon ByRef)
   at J2N.Collections.Concurrent.LurchTable`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].InternalInsert[[J2N.Collections.Concurrent.Add2Info`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], J2N, Version=2.0.0.0, Culture=neutral, PublicKeyToken=f39447d697a969af]](Int32, System.__Canon, Int32 ByRef, J2N.Collections.Concurrent.Add2Info`2<System.__Canon,System.__Canon> ByRef)
   at J2N.Collections.Concurrent.LurchTable`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].Insert[[J2N.Collections.Concurrent.Add2Info`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], J2N, Version=2.0.0.0, Culture=neutral, PublicKeyToken=f39447d697a969af]](System.__Canon, J2N.Collections.Concurrent.Add2Info`2<System.__Canon,System.__Canon> ByRef)
   at J2N.Collections.Concurrent.LurchTable`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].GetOrAdd(System.__Canon, System.Func`2<System.__Canon,System.__Canon>)
   at ICU4N.Globalization.CultureInfoExtensions.ToUCultureInfo(System.Globalization.CultureInfo)
   at ICU4N.Globalization.UCultureInfo.GetCurrentCulture()
   at ICU4N.Globalization.UCultureInfo.get_CurrentCulture()
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, System.String, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, System.String, System.Reflection.Assembly, Boolean)
   at ICU4N.Util.UResourceBundle+<>c__DisplayClass25_0.<GetRootType>b__0(System.String)
   at System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[ICU4N.Util.UResourceBundle+RootType, ICU4N, Version=60.0.0.0, Culture=neutral, PublicKeyToken=efb17c8e4f0e291b]].GetOrAdd(System.__Canon, System.Func`2<System.__Canon,RootType>)
   at ICU4N.Util.UResourceBundle.GetRootType(System.String, System.Reflection.Assembly)
   at ICU4N.Util.UResourceBundle.InstantiateBundle(System.String, System.String, System.Reflection.Assembly, Boolean)
   at ICU4N.Util.UResourceBundle.GetBundleInstance(System.String, System.String, System.Reflection.Assembly, Boolean)
   at ICU4N.Util.UResourceBundle.GetBundleInstance(System.String, System.String)
   at ICU4N.Impl.ICUResourceBundle.GetBundle(ICU4N.Impl.ICUResourceBundleReader, System.String, System.String, System.Reflection.Assembly)
   at ICU4N.Impl.ICUResourceBundle.CreateBundle(System.String, System.String, System.Reflection.Assembly)
   at ICU4N.Impl.ICUResourceBundle+<>c__DisplayClass59_0.<InstantiateBundle>b__0(System.String)
   at ICU4N.Impl.SoftCache`2+<>c__DisplayClass1_0[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].<GetOrCreate>b__0(System.__Canon)
   at System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].GetOrAdd(System.__Canon, System.Func`2<System.__Canon,System.__Canon>)
   at ICU4N.Impl.SoftCache`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].GetOrCreate(System.__Canon, System.Func`2<System.__Canon,System.__Canon>)
   at ICU4N.Impl.ICUResourceBundle.InstantiateBundle(System.String, System.String, System.String, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, System.String, System.String, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Globalization.UCultureInfo+DotNetLocaleHelper.GetDefaultCalendar(System.String)
   at ICU4N.Globalization.UCultureInfo+DotNetLocaleHelper.ToUCultureInfo(System.Globalization.CultureInfo)
   at ICU4N.Globalization.CultureInfoExtensions+<>c.<ToUCultureInfo>b__1_0(System.Globalization.CultureInfo)
   at J2N.Collections.Concurrent.Add2Info`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].CreateValue(System.__Canon, System.__Canon ByRef)
   at J2N.Collections.Concurrent.LurchTable`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].InternalInsert[[J2N.Collections.Concurrent.Add2Info`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], J2N, Version=2.0.0.0, Culture=neutral, PublicKeyToken=f39447d697a969af]](Int32, System.__Canon, Int32 ByRef, J2N.Collections.Concurrent.Add2Info`2<System.__Canon,System.__Canon> ByRef)
   at J2N.Collections.Concurrent.LurchTable`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].Insert[[J2N.Collections.Concurrent.Add2Info`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], J2N, Version=2.0.0.0, Culture=neutral, PublicKeyToken=f39447d697a969af]](System.__Canon, J2N.Collections.Concurrent.Add2Info`2<System.__Canon,System.__Canon> ByRef)
   at J2N.Collections.Concurrent.LurchTable`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].GetOrAdd(System.__Canon, System.Func`2<System.__Canon,System.__Canon>)
   at ICU4N.Globalization.CultureInfoExtensions.ToUCultureInfo(System.Globalization.CultureInfo)
   at ICU4N.Globalization.UCultureInfo.GetCurrentCulture()
   at ICU4N.Globalization.UCultureInfo.get_CurrentCulture()
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, System.String, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, System.String, System.Reflection.Assembly, Boolean)
   at ICU4N.Util.UResourceBundle+<>c__DisplayClass25_0.<GetRootType>b__0(System.String)
   at System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[ICU4N.Util.UResourceBundle+RootType, ICU4N, Version=60.0.0.0, Culture=neutral, PublicKeyToken=efb17c8e4f0e291b]].GetOrAdd(System.__Canon, System.Func`2<System.__Canon,RootType>)
   at ICU4N.Util.UResourceBundle.GetRootType(System.String, System.Reflection.Assembly)
   at ICU4N.Util.UResourceBundle.InstantiateBundle(System.String, System.String, System.Reflection.Assembly, Boolean)
   at ICU4N.Util.UResourceBundle.GetBundleInstance(System.String, System.String, System.Reflection.Assembly, Boolean)
   at ICU4N.Util.UResourceBundle.GetBundleInstance(System.String, System.String)
   at ICU4N.Impl.ICUResourceBundle.GetBundle(ICU4N.Impl.ICUResourceBundleReader, System.String, System.String, System.Reflection.Assembly)
   at ICU4N.Impl.ICUResourceBundle.CreateBundle(System.String, System.String, System.Reflection.Assembly)
   at ICU4N.Impl.ICUResourceBundle+<>c__DisplayClass59_0.<InstantiateBundle>b__0(System.String)
   at ICU4N.Impl.SoftCache`2+<>c__DisplayClass1_0[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].<GetOrCreate>b__0(System.__Canon)
   at System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].GetOrAdd(System.__Canon, System.Func`2<System.__Canon,System.__Canon>)
   at ICU4N.Impl.SoftCache`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].GetOrCreate(System.__Canon, System.Func`2<System.__Canon,System.__Canon>)
   at ICU4N.Impl.ICUResourceBundle.InstantiateBundle(System.String, System.String, System.String, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, System.String, System.String, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Globalization.UCultureInfo+DotNetLocaleHelper.GetDefaultCalendar(System.String)
   at ICU4N.Globalization.UCultureInfo+DotNetLocaleHelper.ToUCultureInfo(System.Globalization.CultureInfo)
   at ICU4N.Globalization.CultureInfoExtensions+<>c.<ToUCultureInfo>b__1_0(System.Globalization.CultureInfo)
   at J2N.Collections.Concurrent.Add2Info`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].CreateValue(System.__Canon, System.__Canon ByRef)
   at J2N.Collections.Concurrent.LurchTable`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].InternalInsert[[J2N.Collections.Concurrent.Add2Info`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], J2N, Version=2.0.0.0, Culture=neutral, PublicKeyToken=f39447d697a969af]](Int32, System.__Canon, Int32 ByRef, J2N.Collections.Concurrent.Add2Info`2<System.__Canon,System.__Canon> ByRef)
   at J2N.Collections.Concurrent.LurchTable`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].Insert[[J2N.Collections.Concurrent.Add2Info`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], J2N, Version=2.0.0.0, Culture=neutral, PublicKeyToken=f39447d697a969af]](System.__Canon, J2N.Collections.Concurrent.Add2Info`2<System.__Canon,System.__Canon> ByRef)
   at J2N.Collections.Concurrent.LurchTable`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].GetOrAdd(System.__Canon, System.Func`2<System.__Canon,System.__Canon>)
   at ICU4N.Globalization.CultureInfoExtensions.ToUCultureInfo(System.Globalization.CultureInfo)
   at ICU4N.Globalization.UCultureInfo.GetCurrentCulture()
   at ICU4N.Globalization.UCultureInfo.get_CurrentCulture()
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, System.String, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, System.String, System.Reflection.Assembly, Boolean)
   at ICU4N.Util.UResourceBundle+<>c__DisplayClass25_0.<GetRootType>b__0(System.String)
   at System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[ICU4N.Util.UResourceBundle+RootType, ICU4N, Version=60.0.0.0, Culture=neutral, PublicKeyToken=efb17c8e4f0e291b]].GetOrAdd(System.__Canon, System.Func`2<System.__Canon,RootType>)
   at ICU4N.Util.UResourceBundle.GetRootType(System.String, System.Reflection.Assembly)
   at ICU4N.Util.UResourceBundle.InstantiateBundle(System.String, System.String, System.Reflection.Assembly, Boolean)
   at ICU4N.Util.UResourceBundle.GetBundleInstance(System.String, System.String, System.Reflection.Assembly, Boolean)
   at ICU4N.Util.UResourceBundle.GetBundleInstance(System.String, System.String)
   at ICU4N.Impl.ICUResourceBundle.GetBundle(ICU4N.Impl.ICUResourceBundleReader, System.String, System.String, System.Reflection.Assembly)
   at ICU4N.Impl.ICUResourceBundle.CreateBundle(System.String, System.String, System.Reflection.Assembly)
   at ICU4N.Impl.ICUResourceBundle+<>c__DisplayClass59_0.<InstantiateBundle>b__0(System.String)
   at ICU4N.Impl.SoftCache`2+<>c__DisplayClass1_0[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].<GetOrCreate>b__0(System.__Canon)
   at System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].GetOrAdd(System.__Canon, System.Func`2<System.__Canon,System.__Canon>)
   at ICU4N.Impl.SoftCache`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].GetOrCreate(System.__Canon, System.Func`2<System.__Canon,System.__Canon>)
   at ICU4N.Impl.ICUResourceBundle.InstantiateBundle(System.String, System.String, System.String, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, System.String, System.String, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Globalization.UCultureInfo+DotNetLocaleHelper.GetDefaultCalendar(System.String)
   at ICU4N.Globalization.UCultureInfo+DotNetLocaleHelper.ToUCultureInfo(System.Globalization.CultureInfo)
   at ICU4N.Globalization.CultureInfoExtensions+<>c.<ToUCultureInfo>b__1_0(System.Globalization.CultureInfo)
   at J2N.Collections.Concurrent.Add2Info`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].CreateValue(System.__Canon, System.__Canon ByRef)
   at J2N.Collections.Concurrent.LurchTable`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].InternalInsert[[J2N.Collections.Concurrent.Add2Info`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], J2N, Version=2.0.0.0, Culture=neutral, PublicKeyToken=f39447d697a969af]](Int32, System.__Canon, Int32 ByRef, J2N.Collections.Concurrent.Add2Info`2<System.__Canon,System.__Canon> ByRef)
   at J2N.Collections.Concurrent.LurchTable`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].Insert[[J2N.Collections.Concurrent.Add2Info`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], J2N, Version=2.0.0.0, Culture=neutral, PublicKeyToken=f39447d697a969af]](System.__Canon, J2N.Collections.Concurrent.Add2Info`2<System.__Canon,System.__Canon> ByRef)
   at J2N.Collections.Concurrent.LurchTable`2[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].GetOrAdd(System.__Canon, System.Func`2<System.__Canon,System.__Canon>)
   at ICU4N.Globalization.CultureInfoExtensions.ToUCultureInfo(System.Globalization.CultureInfo)
   at ICU4N.Globalization.UCultureInfo.GetCurrentCulture()
   at ICU4N.Globalization.UCultureInfo.get_CurrentCulture()
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, System.String, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, ICU4N.Globalization.UCultureInfo, System.Reflection.Assembly, ICU4N.Impl.OpenType)
   at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(System.String, ICU4N.Globalization.UCultureInfo, ICU4N.Impl.OpenType)
   at ICU4N.Text.BreakIteratorFactory.CreateBreakInstance(ICU4N.Globalization.UCultureInfo, Int32)
   at ICU4N.Text.BreakIteratorFactory.CreateBreakIterator(ICU4N.Globalization.UCultureInfo, Int32)
   at ICU4N.Text.BreakIterator.GetBreakInstance(ICU4N.Globalization.UCultureInfo, Int32)
   at ICU4N.Text.BreakIterator.GetSentenceInstance(System.Globalization.CultureInfo)

from icu4n.

codeex avatar codeex commented on July 29, 2024

oooh,please fix it ,Thanks!

from icu4n.

NightOwl888 avatar NightOwl888 commented on July 29, 2024

Thanks for the report. While this is a confirmed bug (it has something to do with loading the Chinese calendar data), tracking to changes of the CultureInfo.CurrentCulture is a new and experimental feature in ICU4N.

The way ICU4J was originally intended to be used was to set both the culture of the platform (in this case CultureInfo.CurrentCulture) and ICU. A workaround is to simply call:

UCultureInfo currentCulture = new UCultureInfo(CultureInfo.CurrentCulture.Name);
UCultureInfo.CurrentCulture = currentCulture; // Optionally set it to the culture for the current thread

This will cause the current culture to of ICU4N to be static for the current thread. If you change the CultureInfo.CurrentCulture, the change won't be reflected in ICU4N, so you would have to also set UCultureInfo.CurrentCulture explicitly.

Or, more specifically when using BreakIterator or another culture-sensitive component, use an instance of UCultureInfo instead of CultureInfo so there won't need to be a conversion from the .NET culture to the ICU4N culture.

var currentCulture = new UCultureInfo(CultureInfo.CurrentCulture.Name);
var sentenceProto = BreakIterator.GetSentenceInstance(currentCulture);

from icu4n.

NightOwl888 avatar NightOwl888 commented on July 29, 2024

This fix is now live in 60.1.0-alpha.354 on NuGet.

from icu4n.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.