Watch, Follow, &
Connect with Us

For forums, blogs and more please visit our
Developer Tools Community.


Welcome, Guest
Guest Settings
Help

Thread: Delphi10でフォルダを一括削除したいのですが



Permlink Replies: 6 - Last Post: Jul 4, 2016 8:10 PM Last Post By: Hideyuki Oya
Hideyuki Oya

Posts: 87
Registered: 6/6/07
Delphi10でフォルダを一括削除したいのですが
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 3, 2016 8:42 PM
OSはWindows10を使っています。
フォルダを(中のファイルごと)削除したいので、ネットを検索していたら次のサイトを見つけました。
https://msdn.microsoft.com/en-us/library/bb775761(v=vs.85).aspx
https://msdn.microsoft.com/en-us/library/bb775767(v=vs.85).aspx

この2つのサイトを参考すればいいみたいなんですが、Delphiではどんなプログラムになるのでしょうか?
Takashi YAMAMOTO

Posts: 9
Registered: 12/26/01
Re: Delphi10でフォルダを一括削除したいのですが
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 4, 2016 1:43 AM   in response to: Hideyuki Oya in response to: Hideyuki Oya
TDirectoryのDeleteメソッドを使うのはどうでしょうか。

uses System.IOUtils;
 
TDirectory.Delete('C:\~', True);


詳しくはドキュメントをご確認ください。
http://docwiki.embarcadero.com/Libraries/Berlin/ja/System.IOUtils.TDirectory.Delete
Hideyuki Oya

Posts: 87
Registered: 6/6/07
Re: Delphi10でフォルダを一括削除したいのですが
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 4, 2016 4:36 PM   in response to: Takashi YAMAMOTO in response to: Takashi YAMAMOTO
Takashi YAMAMOTO wrote:
TDirectoryのDeleteメソッドを使うのはどうでしょうか。

uses System.IOUtils;
 
TDirectory.Delete('C:\~', True);


詳しくはドキュメントをご確認ください。
http://docwiki.embarcadero.com/Libraries/Berlin/ja/System.IOUtils.TDirectory.Delete

回答ありがとうございます。
メソッドの動作確認のため、次のようにしてみたんですが、「互換性の無い型です」というエラーが出てコンパイルできません。
何が間違っているんでしょうか?
//----------------
procedure TForm1.Button3Click(Sender: TObject);
var
Path:String;
begin
Path := 'I:\Book';
Delete(Path,true);
end;
//------------------
Takashi YAMAMOTO

Posts: 9
Registered: 12/26/01
Re: Delphi10でフォルダを一括削除したいのですが
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 4, 2016 6:09 PM   in response to: Hideyuki Oya in response to: Hideyuki Oya
System.IOUtilsユニットのTDirectoryレコードのDeleteメソッドです。
http://docwiki.embarcadero.com/Libraries/Berlin/ja/System.IOUtils.TDirectory.Delete

uses System.IOUtils;
 
procedure TForm1.Button3Click(Sender: TObject);
var
  Path: String;
begin
  Path := 'I:\Book';
  TDirectory.Delete(Path, true);
end;
Hideyuki Oya

Posts: 87
Registered: 6/6/07
Re: Delphi10でフォルダを一括削除したいのですが
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 4, 2016 6:39 PM   in response to: Takashi YAMAMOTO in response to: Takashi YAMAMOTO
Takashi YAMAMOTO wrote:
System.IOUtilsユニットのTDirectoryレコードのDeleteメソッドです。
http://docwiki.embarcadero.com/Libraries/Berlin/ja/System.IOUtils.TDirectory.Delete

uses System.IOUtils;
 
procedure TForm1.Button3Click(Sender: TObject);
var
  Path: String;
begin
  Path := 'I:\Book';
  TDirectory.Delete(Path, true);
end;

うまくいくようです。
TDirectoryが抜けていたんですね。
赤い波線が表示されないので、気が付きませんでした。
ありがとうございます。
igy kk

Posts: 147
Registered: 9/11/03
Re: Delphi10でフォルダを一括削除したいのですが
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 4, 2016 5:45 AM   in response to: Hideyuki Oya in response to: Hideyuki Oya
http://scan.jp/
大野 元久 さんの 「Delphi 3 Q&A 150選」にある、
高度なファイル操作
Q.ファイルを完全に削除する代わりにごみ箱に入れたり、ディレクトリごと削除するにはどうすればよいでしょうか。
とかは、いかがですか?
Hideyuki Oya

Posts: 87
Registered: 6/6/07
Re: Delphi10でフォルダを一括削除したいのですが
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 4, 2016 8:10 PM   in response to: igy kk in response to: igy kk
igy kk wrote:
http://scan.jp/
大野 元久 さんの 「Delphi 3 Q&A 150選」にある、
高度なファイル操作
Q.ファイルを完全に削除する代わりにごみ箱に入れたり、ディレクトリごと削除するにはどうすればよいでしょうか。
とかは、いかがですか?

回答ありがとうございます。
早速ダウンロードしました。
試してみます。
Delphiの書籍が少なくて苦労していたんですが、教えていただいて助かります。
Legend
Helpful Answer (5 pts)
Correct Answer (10 pts)

Server Response from: ETNAJIVE02