人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

VisualBasic2005Professionalで勉強中です。次のような処理をしようとしています。(1) System.IO.File.Create("c:\temp.txt")=ファイルを作る。(2) FileCopy("c:\temp.txt","c:\temp2.txt")=そのファイルを他の場所へコピーする。(1)は成功するのですが、(2)において、次のようなエラーが出ます。「別のプロセスで使用されているため、プロセスはファイル 'c:\temp.txt' にアクセスできません。」デバッグ中に、エラーが出たままにしてそのtemp.txtファイルを普通に開こうとしてみると、確かに開けません。また、FileCopyの代わりにSystem.IO.File.Copyを使用しても同じ結果でした。なぜでしょうか? File.Createの挙動がポイントであるような気がするのですが、よくわかりません。解説をお願いできればと思います。

●質問者: crashtruck
●カテゴリ:コンピュータ
✍キーワード:txt アクセス エラー コピー デバッグ
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● ロベール
●74ポイント

(1) の後にファイルを閉じてないからだと思います。

System.IO.File.Create の戻り値(System.IO.FileStream 型)を使って

Close すると大丈夫だと思います。

http://jeanne.wankuma.com/tips/file/create.html


2 ● yuuboku
●75ポイント

http://jeanne.wankuma.com/tips/file/create.html

VB.NETでのファイルの作成の解説です。

こちらにはVB.NETの開発環境が無いため動作確認はしていませんが、開いたファイルは閉じるのがお約束なので、サンプルのように閉じる処理を加えれてあげればいいと思います。


3 ● くまっぷす
●75ポイント

http://jeanne.wankuma.com/tips/file/create.html

http://f57.aaa.livedoor.jp/~jeanne/bbs/faq.cgi?mode=al2&namber=2...

Createした後Closeしていったん閉じないと…。


4 ● きゃづみぃ
●79ポイント

http://jeanne.wankuma.com/tips/file/create.html

作成したファイルは、クローズしないとダメです。

開いたままの状態では コピーも移動も削除もできません。

◎質問者からの返答

失礼ですが、一度に返信させていただきます。皆様ありがとうございました。とっても初歩的な質問でした。勉強いたします。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ