VC++.netでディレクトリの取得

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
.net初心者

VC++.netでディレクトリの取得

#1

投稿記事 by .net初心者 » 15年前

こちらで聞くことではないのはわかっております。
現在VC++.netについて勉強しております。
今まで組み込み系のCの経験はあったのでfor文など基本的な使い方はわかります。

VC++.netで特定のディレクトリにあるファイル名の取得を行いたいです。
ただし全く見当がつきません・・・。

例えば
dir.exe
┠aaa.txt
┠bbb.txt
┠ccc.txt
┠ddd.txt
┗フォルダ
┗eee.txt

この様な構成があったらaaa~ddd.txtまで取ってきたいです。
どのようにすればよいのでしょうか。

また今後のためにフォルダ以下にあるeee.txt等も取ってこれるのでしたら
両方教えていただけますと助かります。

.net初心者

Re:VC++.netでディレクトリの取得

#2

投稿記事 by .net初心者 » 15年前

すみません。
しばらく検索してましたら出来ました。
しかし取得したものをforeachで取得するやり方がわかりません。
下記のソースだとコメントを消してしまうとエラーが出てしまいます。
filesの分だけ回したいです。

// ディレクトリのサーチ
array<String^>^ files = System::IO::Directory::GetFiles(path);
// for each(array<String^>^ files in files){
//  ここに処理
// this->comboBoxItem->Items->Add(files);
// }

バグ

Re:VC++.netでディレクトリの取得

#3

投稿記事 by バグ » 15年前

// for each(array<String^>^ files in files){

この部分、おかしくないですか?

filesという同じ変数名が使用されていますし、コピーされる側まで配列にしてしまっては駄目です。

pooka

Re:VC++.netでディレクトリの取得

#4

投稿記事 by pooka » 15年前

>for&#160;each(array<String^>^&#160;files&#160;in&#160;files){
これは
for&#160;each(String^&#160;file&#160;in&#160;files){
ですね。

>フォルダ以下にあるeee.txt
array<String^>^&#160;files&#160;=&#160;System::IO::Directory::GetFiles(path,&#160;"*",&#160;System::IO::SearchOption::AllDirectories);
このように引数を指定することでサブフォルダのファイルも取得できます。
テキストファイルのみ取得するのであれば、"*"&#160;を&#160;"*.txt"&#160;にすればできます。

.net初心者

Re:VC++.netでディレクトリの取得

#5

投稿記事 by .net初心者 » 15年前

ありがとうございます。
使い方が何となく理解できました。
問題なく表示もできました。

.net初心者

Re:VC++.netでディレクトリの取得

#6

投稿記事 by .net初心者 » 15年前

何度もお尋ねしてすみません。
foreachを使ってcheckedListBoxで選択されているアイテムを取得したいです。
とりあえずテキストボックスに表示しようと頑張ってみました。
しかしいくらやってもforeachでエラーが返ってきてしまいます。

どの様にすれば取得できるでしょうか?

this->checkedListBoxItem->

net初心者

Re:VC++.netでディレクトリの取得

#7

投稿記事 by net初心者 » 15年前

一回締めさせてください。

閉鎖

“C言語何でも質問掲示板” へ戻る