- - PR -
C#コーディングで dosコマンドを使ってファイルやフォルダの削除・コピーをしたいのですが・・・
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-05-17 03:37
初心者です。
Cのシステム関数のように、C#コーディングで dosコマンドを使ってファイルやフォルダの削除・コピーをしたいのですがうまくできません。 下の@Aの二通り試しましたがどちらもエラーとなります。 ('System.ComponentModel.Win32Exception' のハンドルされていない例外が system.dll で発生しました。 追加情報 : 指定されたファイルが見つかりません。) 解決方法ご教示よろしくお願いいたします。 @ Process p = Process.Start( "del ",@"C:\\test\\*.csv"); p.WaitForExit(); A System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo(); psi.CreateNoWindow = true; //ウィンドウを表示しない psi.Arguments = @"del C:\\test\\*.csv"; Process p = Process.Start(psi); p.WaitForExit(); | ||||||||||||
|
投稿日時: 2006-05-17 04:40
普通は System.IO.File.Delete メソッドを使うんですが あえて del でファイルを削除するなら "del.exe" なんてものは無いので コマンドプロンプトの引数に渡します。
| ||||||||||||
|
投稿日時: 2006-05-17 06:15
かるあ様
うまくできました。 これからDOSコマンドを使う場面がでてくるのでとても助かりました。 ありがとうございました。 | ||||||||||||
|
投稿日時: 2006-05-17 06:55
えっ・・・そんなに頻繁につかうんですか? | ||||||||||||
|
投稿日時: 2006-05-17 07:45
"cmd" ではなく "%COMSPEC%" を使った方が良いと思います。
悲しき事情があるのかもしれません。コマンド プロンプトなんてなるべく使わないに限りますね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||
|
投稿日時: 2006-05-17 08:08
フォローありがとうございます。 環境変数使えたんですね。そこまで頭が回りませんでした(汗
| ||||||||||||
|
投稿日時: 2006-05-17 11:14
C# で生活するなら、PowerShell あたりで、やったほうが良いでしょう。
DOSコマンドの 捻じ曲がってしまった 味わいを 体験しなくて済みます。 (不屈の闘志を養成はできますが、 現代的プログラム言語から離れたくないなら) ------ 21世紀に 昭和の 言語に会った感じ -- 私のソースは ダビンチ・コード。 謎に迫ると、・・・ [ メッセージ編集済み 編集者: MMX 編集日時 2006-05-20 18:20 ] | ||||||||||||
|
投稿日時: 2006-05-18 20:50
みなさま、ありがとうございます。
>悲しき事情・・・ そうなんです(ただし自分に起因する。。。泣) 動かせる状態にしてから整えたいというのが正直なところです。 腕力がないので、使いうる手段でまず、です。 「考えない愚かな開発者に理解を求めるには?」 の事例にあるようなこわいことは避けます。 >PowerShell やってみます! |