• 締切済み

ディレクトリの移動

下記msdnサイトを参考にDir1フォルダをDir2フォルダへ移動させる処理を作りました。 【Visual Basic でディレクトリを移動する】 http://msdn.microsoft.com/ja-jp/library/ct88d1f1.aspx My.Computer.FileSystem.MoveDirectory("C:\Dir1", "C:\Dir2") しかし、この方法ではDir1フォルダの「中身」がDir2フォルダへ移動され、Dir1フォルダは消えてしまいました。 同名ファイルやフォルダが存在する場合などを考えて作るのがめんどくさかったのでMoveDirectoryを使いたかったのですが、思ったように動かず残念に思っていました。 しかし、同サイト(msdn)には下記内容も紹介されていました。 【Visual Basic でディレクトリの内容を移動する】 http://msdn.microsoft.com/ja-jp/library/ayce3kye.aspx これこそmoveDirectoryがマッチする案件だと思うのですが こっちの内容はなぜかfor文を使って見つかったファイルを移動させるという原始的なものでした。(どちらも更新日は2007年11月なのに。。。) ここで質問なのですが、 1.moveDirectoryの動きはバグなのでしょうか? 2.Dir1ごとディレクトリを移動させる方法として、moveDirectoryのように簡単に高機能なディレクトリ移動させる方法は無いでしょうか? 以上、よろしくお願いします。 実験環境:.NET Framework 3.5 SP1

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

『移動』なら ソースのDir1が消える仕様でしょうね Dir1フォルダー自体は残しておいて 中身だけを移動させたいなら ご提示のURLのような原始的な方法を使うのが初歩的なものです 別案としては MoveDirectoryで移動させてしまった後 CreateDirectoryで新規に Dir1を作ってしまうかです

OKbokuzyo
質問者

お礼

取り急ぎ、移動先に同名のフォルダを先に作成し、 そこへmoveDirectoryで移動させる方法で回避しました。 回答ありがとうございました。

関連するQ&A