フォルダ内のテキストファイルをフィルターをかけて
ファイルリストボックスでファイル名によって表示を切り分けしたい
のですが、どうもうまくいきません。混在するファイル名は
(1)「9999999999.txt」(2)「A_BCD.txt」(3)「???.txt」
の3パターンでして、(2)はPattern機能で"*_*.txt"としたら
(2)のみ表示するのですが、(1)だけの表示方法が分かりません。
((3)は(1)(2)のパターンに属さないファイル名です。)
(1)の規則性としては、ファイル名が[10桁の数値]ということだけです。
バイト数と数値でファイル自体は判断できるのですが、
ファイルリストボックスで(1)のみを表示する方法が分かりません。
何か良い方法があればご教授お願いします。
VB6ですよネ?
10ケタという部分は無理ですが、数値であれば・・・
と言う仕様であれば可能です。
File1.Pattern = "0*.TXT;1*.TXT;2*.TXT;3*.TXT;4*.TXT;5*.TXT;6*.TXT;7*.TXT;8*.TXT;9*.TXT"
ですが、(3)のファイルの先頭文字が、数字半角以外であることが
前提です。
※ ワイルドカード設定で、『*』と『?』が使い分けできない
仕様のように思えます。バグかナ〜・・・
以上。
数値の判定が岡田さんので良いなら
0?????????.txt
1?????????.txt
・
・
・
9?????????.txt
…でいけるんじゃないでしょうか?
ただこれは『数値で始まる10桁の文字』
を持つファイル名になると思いますが…
数値か文字かを判定したいのなら自作
したほうがいいと思います。
岡田 之仁様・特攻隊長まるるう様、ご返答ありがとうございます。
感謝!!の一言に尽きます。
ワイルドカードで「?」が使えるとは知りませんでした。
数値か文字列かの判断は今回はなしにしました。
本来「0123456789.txt」のような数値タイプのファイルが
存在するだけであって、「0ABCDEFGHI.txt」のようなファイルは
まず入ってこないのです。もし入ってくるとすれば、
ユーザーが勝手にいぢった!!ということですので、
それは運用でカバーしてもらうことにします。
助かりました。ありがとうございましたm(__)m
ツイート | ![]() |