I need to sort a List<string>
which contains Japanese alphabet.
How could I do this in C#?
There is an overload List<T>.Sort(IComparer<T> comparer)
. You can pass a culture specific comparer to the sort method. The following code compares using the Japanese culture settings:
myList.Sort(StringComparer.Create(new CultureInfo("ja-JP"), true));
In this case I passed true
as the argument to indicate that the comparison must be case insensitive. The StringComparer
has a couple of static properties and methods to create a suitable comparer:
StringComparer.CurrentCulture;
StringComparer.CurrentCultureIgnoreCase;
StringComparer.Create(CultureInfo culture, bool ignoreCase);
etc.
You can find more information on this msdn page.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With