指定した拡張子だけ削除するには?

解決


JIN  2004-10-13 02:08:18  No: 54711  IP: [192.*.*.*]

ド素人でさっぱりわからないので教えてくれたら幸いです。
環境はWin2k VC6  です。

指定した拡張子だけ削除するにはどのようにしたらいいのでしょうか?
  あと、指定したディレクトリ以下全て(ディレクトリを含む)を
削除するにはどのような方法があるのでしょうか?
よろしくお願いします

編集    削除
tetrapod  2004-10-13 02:32:42  No: 54712  IP: [192.*.*.*]

>指定した拡張子だけ削除するにはどのようにしたらいいのでしょうか?
del *.c

>  あと、指定したディレクトリ以下全て(ディレクトリを含む)を
>削除するにはどのような方法があるのでしょうか?
rmdir /s hoge

それともプログラムでやりたいのでしょうか?

編集    削除
JIN  2004-10-13 02:43:58  No: 54713  IP: [192.*.*.*]

>tetrapod さん

そうです。プログラムでやりたいんです。
言葉が足りなかったですね…
ダイアログ上で拡張子を入力し、そのディレクトリ中の
その拡張子だけを消すみたいなツールが作りたいんです。
できたら、条件に作成日時等を加えていきたいです

編集    削除
RAPT  2004-10-13 08:25:17  No: 54714  IP: [192.*.*.*]

確認。

指定した「拡張子」を削除?
  "ABC.TXT" → "ABC"
…MoveFile

指定した拡張子の「ファイル」を削除?
  "ABC.TXT"をディスク上から削除
…DeleteFile

> 条件に作成日時等を加えて
FindFirstFile

編集    削除
JIN  2004-10-13 11:50:38  No: 54715  IP: [192.*.*.*]

ごめんなさい  更に言葉足らずでしたね
拡張子を指定して、その拡張子のファイル全てをを削除したいのですが
その検索・判別方法がわかりません
どのような方法があるのでしょうか?

編集    削除
KING・王  2004-10-13 17:07:55  No: 54716  IP: [192.*.*.*]

RAPTさんが示されていますが、
FindFirstFile,FindFirstNextでファイルの検索ができます。
あとは、それらを順番に、DeleteFileを用いて削除すればOKだと思います。
#それぞれの関数については、MSDNで調べてください。

>その検索・判別方法がわかりません

判別方法?
何の判別ですか?
拡張子の判別ということですか?
拡張子を指定して(例、*.TXT)検索すれば、判別の必要はありませんが。。。

編集    削除
YuO  2004-10-13 19:06:02  No: 54717  IP: [192.*.*.*]

> 拡張子を指定して(例、*.TXT)検索すれば、判別の必要はありませんが。。。

*.TXTは*.TXT*と同義なので,拡張子.TXTAを消さないようにする必要があるなら,
判別の必要が出てきますね。

編集    削除
JIN  2004-10-13 19:20:58  No: 54718  IP: [192.*.*.*]

なるほど、FindFirstFile,FindNextFile で拡張子で検索かけながら
順次消していけばOKなんですね。
ファイルを列挙して判別とか余計なことを考えてました(汗
あとはMSDNで調べながら頑張ってみます。
ありがとうございました。

編集    削除
JIN  2004-10-13 19:22:04  No: 54719  IP: [192.*.*.*]

↑解決チェックし忘れました

編集    削除