C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[5]: ディレクトリ名一覧を取得し順次削除するには?


(過去ログ 11 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■2233 / inTopicNo.1)  ディレクトリ名一覧を取得し順次削除するには?
  
□投稿者/ KS (1回)-(2007/03/28(Wed) 09:39:56)

分類:[C# (Windows)] 

C#をはじめて、1時間ほどしかたっていない初心者です。
回答の程よろしくお願いいたします。

ディレクトリ名一覧を取得し、そのディレクトリを順次削除するプログラムを書いていたのですがstring配列で躓いてしまいました。
いろいろ調べたのですがわかりません。
取得したディレクトリ一覧を、どうやって使用すればいいのでしょうか。

なお、
System.IO.Directory.Delete("C:\\Folder", true);
で消せばいいのではという方もいると思いますが、プログレスバーで削除の進行状況を確認できるようにしたいので。

これ以外の方法でプログレスバーを利用できる方法でも構いません。

>>ソース
int num;

string[] dirs = Directory.GetDirectories(@"C:\\Folder", "*", SearchOption.AllDirectories);
foreach (string dir in dirs)
{
num++;
Console.WriteLine(dir);
}

progressBar1.Minimum = 0;
progressBar1.Maximum = num;

for (int i = 0; i < num; i++)
{
//わからないのはこの部分です。
System.IO.Directory.Delete("C:\\Folder\\".dirs, true);
System.Threading.Thread.Sleep(1000);
progressBar1.Value = i;
}

引用返信 編集キー/
■2234 / inTopicNo.2)  Re[1]: ディレクトリ名一覧を取得し順次削除するには?
□投稿者/ επιστημη (448回)-(2007/03/28(Wed) 10:06:05)
επιστημη さんの Web サイト
> for (int i = 0; i < num; i++)
> {
> //わからないのはこの部分です。
> System.IO.Directory.Delete("C:\\Folder\\".dirs, true);
> System.Threading.Thread.Sleep(1000);
> progressBar1.Value = i;
> }

# 質問ヘタ。
これのどこが/どう"わからない"のですか?

引用返信 編集キー/
■2235 / inTopicNo.3)  Re[2]: ディレクトリ名一覧を取得し順次削除するには?
□投稿者/ KS (2回)-(2007/03/28(Wed) 10:29:34)
No2234 (επιστημη さん) に返信

for (int i = 0; i < num; i++)
{
//わからないのはこの部分です。
System.IO.Directory.Delete("C:\\Folder\\".dirs, true);
System.Threading.Thread.Sleep(1000);
progressBar1.Value = i;
}

どうやって、C:\\Folder\\の以降に取得したディレクトリを参照させるかを知りたいのです。
引用返信 編集キー/
■2237 / inTopicNo.4)  Re[3]: ディレクトリ名一覧を取得し順次削除するには?
□投稿者/ επιστημη (449回)-(2007/03/28(Wed) 10:38:23)
επιστημη さんの Web サイト
> どうやって、C:\\Folder\\の以降に取得したディレクトリを参照させるかを知りたいのです。

System.IO.Directory.GetDirectories(@"C:\Folder", "*", System.IO.SearchOption.AllDirectories))
によって得られるstring[]の各要素は"きっちりfull-path"じゃないっけ? (WriteLineで確認してますよね?)

だったら

for ( int i = 0; i < num; ++i ) {
  System.IO.Directory.Delete(dirs[i], true); 
  ...
}

ってやればよくね?

引用返信 編集キー/
■2239 / inTopicNo.5)  Re[4]: ディレクトリ名一覧を取得し順次削除するには?
□投稿者/ KS (3回)-(2007/03/28(Wed) 11:01:41)
>επιστημη さん

ありがとうございました。
てっきり、\以降のディレクトリ名だと思っていました。

解決済み
引用返信 編集キー/
■2240 / inTopicNo.6)  Re[5]: ディレクトリ名一覧を取得し順次削除するには?
□投稿者/ επιστημη (450回)-(2007/03/28(Wed) 11:09:58)
επιστημη さんの Web サイト
> てっきり、\以降のディレクトリ名だと思っていました。

え? なんで? WriteLineで確認してるやん。

たとえそうだとしても
System.IO.Directory.Delete(@"C:\Folder\"+dirs[i], true);
でおっけーしょ?

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -