言語長年の紛争、以下の実験いくつかのIOは(9Gが削除多くのファイル、バッチを通過)、誰がメリットを比較するために、事実を使用しようとします.OS:Win7の64ビットパッケージサイズ:9.68G.

  まず、言語:C#の

  開発環境:2013対

  コードの行の合計数:43本のライン

  時間:7秒

  コード:

  システムを使用しました.

  システムを使用して.コレクション.ジェネリック;

  システムを使用して.IO;

  システムを使用して.LINQの;

  システムを使用して.テキスト;

  システムを使用して.スレッド.タスク;

  名前空間BatchDelete

  {

  クラスプログラム

  {

  静的な無効メイン(文字列[] args)

  {

  \ TMP://は、ディレクトリeを入力してください

  文字列パス.

  コンソール.WriteLineメソッド(「あなたはきれいにしたいディレクトリを入力してください.」);

  パス=コンソール.読み込まれた行 ();

  //タイマーを開始

  コンソール.WriteLineメソッド( "開始時刻:" +日時.今.ToStringメソッド( "HH:MM:SS"));

  //削除リサイクル見つけるための最初の試合をトラバース

  (ディレクトリの場合.)(パス)が存在します

  {

  コンソール.書き込み( "削除");

  foreachの(ディレクトリ内の文字列のファイル名.GetファイルシステムEntries(パス))

  {

  (ファイルの場合.(fileNameに)&& fileNameに存在します.含まれています(「cachegrind.でる "))

  {

  File.(ファイル名)を削除します.

  }

  }

  コンソール.WriteLineメソッド( "");

  }

  そうしないと

  {

  コンソール.WriteLineメソッド(「ディレクトリが存在しません.!「);

  }

  //タイミング?エンド

  コンソール.WriteLineメソッド( "終了時期:" +日時.今.ToStringメソッド( "HH:MM:SS"));

  コンソール.ReadKey();

  }

  }

  }

  実行効果図:

  

  第二に、言語:C / C ++

  開発環境:2013対

  コードの行の合計数:50行

  時間:36秒

  コード:

  #include

  #include

  #include

  #include

  #include

  #include

  #include

  名前空間stdを使用.

  INTメイン(int型ARGC、CHAR * ARGV [])

  {

  \ TMP://は、ディレクトリeを入力してください

  文字列strPath;

  COUT << "输入要清理的目录:" << endl;

  getline(CIN、strPath).

  //タイマーを開始

  SYSTEMTIMEのSYS_TIME; //宣言変数

  GetLocalTime(&SYS_TIME); //ローカル時間に設定される可変値

  printf( "開始時刻:%02D:%02D:%02D \ n" は、SYS_TIME.wHour、SYS_TIME.wMinute、SYS_TIME.wSecond);

  //削除リサイクル見つけるための最初の試合をトラバース

  名前空間FS =ブースト::ファイルシステム.

  FS ::パスfull_道(FS :: initial_道());

  full_道 = FS :: system_complete(FS ::パス(strPath、FS ::ネイティブ)).

  (fsは::存在する(full_path))場合

  {

  COUT << "正在删除" ;

  FS :: directory_iteratorのitem_begin(full_path).

  FS :: directory_iteratorのitem_end.

  (用; item_begin != Item_end; item_begin ++)

  {

  (もし!FS :: is_directory(* item_begin))

  {

  (fsは::存在する場合(item_begin->パス())&&ブースト::含まれています(item_begin->パス().文字列()、「cachegrind.でる "))

  {

  FS ::削除(item_begin->パス());

  }

  }

  }

  COUT << "" << endl;

  }

  そうしないと

  {

  COUT << "该目录不存在!" << endl;

  }

  //タイミング?エンド

  GetLocalTime(&SYS_TIME).

  printf( "タイムアップ:%02D:%02D:%02D \ n" は、SYS_TIME.wHour、SYS_TIME.wMinute、SYS_TIME.wSecond);

  システム(「一時停止」).

  0を返します.

  }

  実行効果図:

  

  第三に、言語:PHP

  開発環境:Phpstorm

  コードの行の合計数:32本のライン

  時間:13秒

  コード:

  

  date_default_timezone_set( ''PRC'');

  \ TMP://は、ディレクトリeを入力してください

  $パス= ''E:\ TMP'';

  //タイマーを開始

  エコー日付( "H:I:S"、時間()) . "
「;

  //削除リサイクル見つけるための最初の試合をトラバース

  もし(is_dir($パス))

  {

  エコー「削除」;

  $ MYDIR = DIR($パス);

  しばらく($ファイル= $ mydir->読み())

  {

  (file_exists( "$パス/ $ファイル")&& strpOS($ファイル「cachegrind場合.アウト「)=== 0)

  {

  リンク解除( "$パス/ $ファイル");

  }

  }

  エコー ''
「;

  }

  そうしないと

  {

  エコー「ディレクトリが存在しません.!" . "
「;

  }

  //タイミング?エンド

  エコー日付( "H:I:S"、時間()) . "
「;

  実行効果図:

  

  第四に、言語:Javaの

  開発環境:Eclipseの

  コードの行の合計数:43本のライン

  時間:10秒

  コード:

  パッケージコム.yejing;

  インポートのjava.IO.ファイル;

  インポートのjava.テキスト.SimpleDateFormat;

  インポートのjava.utilのの.日付;

  インポートのjava.util.スキャナ;

  パブリッククラスTest {

  パブリック静的無効メイン(文字列[] args){

  スキャナS =新しいスキャナ(システム.に);

  \ TMP://は、ディレクトリeを入力してください

  文字列パス= NULL;

  システム.でる.println(「あなたはきれいにしたいディレクトリを入力してください.」);

  パス= S.次 ();

  //タイマーを開始

  日付nowTime =新しいDate();

  SimpleDateFormatの時間=新しいてSimpleDateFormat( "HH:MM:SS");

  システム.でる.println( "開始時刻:" +時間.フォーマット(nowTime)).

  //削除リサイクル見つけるための最初の試合をトラバース

  ファイルDIR =新しいファイル(パス);

  (DIR場合.存在()){

  システム.でる.(「削除」)を印刷.

  ファイル[] FS = DIR.LISTFILES();

  (int型のために、私は= 0; I

  (もし!FS [I].isDirectory()){

  (FS [i]の場合.ISFILE()&& FS [I].存在()&& FS [I].getName().含まれています(「cachegrind.でる "))

  {

  FS [I].削除();

  }

  }

  }

  システム.でる.println( "");

  } そうしないと {

  システム.でる.println(「ディレクトリが存在しません!「);

  }

  //タイミング?エンド

  nowTime =新しいDate();

  System.でる.println( "開始時刻:" +時間.フォーマット(nowTime)).

  }

  }

  実行効果図:

  

  V.言語:Pythonの3.3.5

  開発環境:IDLE

  コードの行の合計数:20本のライン

  時間:10秒

  コード:

  # - * - コーディング:UTF-8 - * -

  インポート日時

  輸入OS

  #ディレクトリeを入力します:\ TMP

  パス=入力(「ディレクトリをクリーンアップします:\ nは」);

  #タイマーを開始

  印刷(「開始時刻:」、日時.日付時刻.今().strftime( ''%のH:%のM:%のS''));

  #削除リサイクル見つけるために、最初の試合を横断

  (OSの場合.path.(パス))が存在します.

  (「削除」)を印刷.

  OS内の親、にdirnames、ファイル名の.(パス)を歩きます:

  ファイル名にファイル名の:

  このtargetFile = OS.path.(親、ファイル名)に参加

  (OSの場合.path.ISFILE(このtargetFile)と「cachegrind.)このtargetFileの」アウト:

  os.削除(このtargetFile)

  そうしないと:

  印刷(「ディレクトリが存在しません!「);

  #タイミング?エンド

  印刷(「終了時期:」、日時.日付時刻.今().strftime( ''%のH:%のM:%のS''));

  実行効果図:

  

  また、記事で興味がある可能性があります.ディスクジャンクファイルクリーナーのpythonのpythonコードのクリーンアッププログラムフォルダ実装ファイルは自動的に共有のpythonを達成重複ファイルをクリーンアップすること

(:C#、C / C ++、PHP、PythonやJavaの言語)バッチシステムの一時ファイルをクリーンアップする方法

Recommend Article: