- PR -

文字列のソート

投稿者投稿内容
れい
ぬし
会議室デビュー日: 2005/11/01
投稿数: 346
投稿日時: 2007-08-04 15:21
引用:

渋木宏明(ひどり)さんの書き込み (2007-08-04 07:29) より:
引用:

プロセスもスレッドも関係なく、
シェルのロケールを使うのではないでしょうか?


そうかなぁ?
シェルそれ自身に「ロケールの設定」があるわけではないので、そのセンは薄いような



シェルそれ自身の「ロケールの設定」というのがよくわかりませんが、
現在のUIのロケールやシステムのデフォルトロケールを
読んでくれればそれで十分便利かと思いますが。
それはシェルのロケールとはいえませんか?

引用:

最も問題なのは、それが StrCmpLogicalW のヘルプにドキュメントされていないことですね。



StrCmpLogicalWじゃなくてどっかに書いてあると思うんですがね。
ぱっとみたんですが見当たりません。

[ メッセージ編集済み 編集者: れい 編集日時 2007-08-04 15:28 ]
れい
ぬし
会議室デビュー日: 2005/11/01
投稿数: 346
投稿日時: 2007-08-04 17:38
引用:

自分の書き込み:
シェルそれ自身の「ロケールの設定」というのがよくわかりませんが、
現在のUIのロケールやシステムのデフォルトロケールを
読んでくれればそれで十分便利かと思いますが。
それはシェルのロケールとはいえませんか?



日本語よくわからないですね。
UIのロケールって言うべきでした。

で、気になったので調べてみました。

shlwapi内の一連のStrCmpは
呼び出しスレッドのカレントロケールでソートするだけのようです。
(もちろんStrCmpC等は違います)
普通ですね。

そうすると、
任意のロケールでexplorer likeなソートをしたいときは
ロケール変更してからStrCmpLogicalW呼ばないと
いけないってことですね。

まぁ別に困らないけど。

[ メッセージ編集済み 編集者: れい 編集日時 2007-08-04 17:49 ]
extream
ベテラン
会議室デビュー日: 2005/12/26
投稿数: 83
投稿日時: 2007-08-06 10:06
かるあさん、こあらさん、じゃんぬねっとさん、Hongliangさん、渋木宏明(ひどり)さん、れいさん 回答ありがとうございます。
お返事遅れてすいません。


もっと単純な方法があるのかと思っていましたが、Explorerと同じようにするにはいろいろ手間がかかりそうですね。
ロケールという単語は初めて聞いたので、そこら辺から勉強してきます。



どうもありがとうございましたm(__)m

スキルアップ/キャリアアップ(JOB@IT)