2009-05-01 15 views
1

私は「あいうえお」順を使用して、いくつかの日本の店の名前を並べ替えしようとしていますソート日本語テキスト使って「あいうえお」順

行うためのアルゴリズムがある場合

は誰もが知っている私は比較演算子を書かれているこの

次の私は、JA-JPの文化がソートUnicodeを使用して信じているよう

internal class JewellerComparer : IComparer<string> 
    { 
     private readonly string _culture; 

     public JewellerComparer(string culture) 
     { 
      _culture = culture; 
     } 

     public int Compare(string x, string y) 
     { 
      // no culture specified in constructor 
      if (string.IsNullOrEmpty(_culture)) 
       return x.CompareTo(y); 

      // otherwise to a culture sensitive comparison 
      return string.Compare(x, y, false, new CultureInfo(_culture)); 
      //new CultureInfo(0x00010411); // ja-JP Japanese - Japan Default: 0x00000411 Unicode: 0x00010411 
     } 
    } 

誰もがこれを行う方法上の任意のアイデアがありますか?

+0

ラテン文字またはひらがな文字を使用していますか? –

+0

こんにちは - ひらがなの文字 – ChrisCa

答えて

0

はい、あります。必要なのは、ロケールを意識した並べ替えだけです。私はJavaのエキスパートもユーザもいませんが、strcollとqsortを組み合わせたものは、Cで何をするのでしょうか。

また、libicu(Javaバインディングもあります)を試してみると、それがロケールを尊重するかどうかはわかりません。

関連する問題