- PR -

VS2002でのワイルドカードを使ってのファイル削除について

1
投稿者投稿内容
なせ
常連さん
会議室デビュー日: 2006/01/06
投稿数: 41
お住まい・勤務地: おおさか
投稿日時: 2006-08-11 12:11
いつもお世話になっております。

件名のとおりなのですが、
VS2002でワイルドカードを使ってのファイル削除
たとえば、「C:\file\*」のようなパス指定をして
ファイルの削除を行うことはできるのでしょうか?
とりあえずのところFILE.Deleteメソッドで試してみたのですが、
「*」自身を受け付けてくれません。。

探してみたところによると
Directory.GetFilesでファイル名を受け取って一つずつ削除をするというのはありました。
もし何かいい方法がありましたら、教えていただけませんか?

開発環境
VS2002 VB.NET
Windowsアプリ
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-08-11 12:46
引用:

なせさんの書き込み (2006-08-11 12:11) より:

探してみたところによるとDirectory.GetFilesでファイル名を受け取って一つずつ削除をするというのはありました。
もし何かいい方法がありましたら、教えていただけませんか?


私は、この方法を 1 つのメソッドで定義して使っています。
引数は、ディレクトリまでのパス、パターン文字列、サブ ディレクトリも追跡するかの 3 つ。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
なせ
常連さん
会議室デビュー日: 2006/01/06
投稿数: 41
お住まい・勤務地: おおさか
投稿日時: 2006-08-11 14:07
C言語では確かワイルドカードを使用して、
一括リネーム!
一括削除!
とか昔した記憶があったので.NETでもあるだろうと思ってたのですが、
そゆのは無いんですねぇ。

じゃんぬさんありがとうございました。
メソッドにして組み込んでみます。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-08-14 22:09
del *.* を、OS シェルに渡せば、一括でできるね。それは、.NET Framework でもできる。
Blue
大ベテラン
会議室デビュー日: 2005/09/12
投稿数: 230
お住まい・勤務地: 知っている人は知っている
投稿日時: 2006-08-15 09:01
引用:

なせさんの書き込み (2006-08-11 14:07) より:
C言語では確かワイルドカードを使用して、
一括リネーム!
一括削除!
とか昔した記憶があったので.NETでもあるだろうと思ってたのですが、
そゆのは無いんですねぇ。


Windowsならば
Win32 API の SHFileOperation あたりを使えば、ワイルドカードを使った、コピーや削除は出来たと思います。
ただし、リネームは出来ないのでは?(リネーム後のファイル名をどう決めるのか?)

[ メッセージ編集済み 編集者: Blue 編集日時 2006-08-15 09:02 ]
1

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