0

FileStream次の行を含むファイルからを作成しようとしています:

Dim fStream As FileStream = New FileStream(destinationPath, FileMode.Create, FileAccess.Read)

これを行うと、次のエラーが表示されます

Combining FileMode: Create with FileAccess: Read is invalid.

誰でもこれで私を助けることができますか?

編集:ファイルを作成するのではなく、ファイルから読み取ろうとしています。

4

7 に答える 7

3

Readaccess では、ファイルを変更することはできません。ファイルの作成は変更としてカウントされます。Writeどちらかを使用するか、アクセスする必要がありReadWriteます。

編集:もちろん、2番目のシナリオがあります:

既に存在するファイルから読み取ろうとしている場合は、使用しないでくださいFileMode.Create。代わりに、を使用してFileMode.Openください。

于 2013-01-14T21:10:29.387 に答える
2

ファイルを作成しようとしている (場合によってはファイルに書き込もうとしている) 場合は、FileAccess.Writeまたは多分を使用する方が理にかなっていますFileAccess.ReadWrite

于 2013-01-14T21:10:09.967 に答える
1

読み取りしかできない場合、どうすればファイルを作成できますか?ファイルへの書き込みアクセス権もあることを指定する必要があります。FileAccessのMSDN試してみてください:

Dim fStream As FileStream = New FileStream(destinationPath, FileMode.Create, FileAccess.ReadWrite)
于 2013-01-14T21:12:17.407 に答える
1

エラー メッセージには、何が問題なのかが示さます。新しいファイルを作成しているため、読み取るものは何もありません。

3 番目の引数を に変更しFileAccess.Writeます。

于 2013-01-14T21:10:38.330 に答える
1

FileMode.CreateファイルをdestinationPath作成する (または既に存在する場合は再作成する) ことを指定すると、新しい空のファイルが作成されます。新しいファイルでは、読み取るデータはありません。フラグFileAccessを含む値を渡す必要があります。Write

于 2013-01-14T21:10:41.180 に答える
1

Createと矛盾するからですRead。試すNew FileStream(destinationPath, FileMode.Create, FileAccess.ReadWrite)

于 2013-01-14T21:10:19.563 に答える
0

申し訳ありませんが、明確ではありませんでしたが、前述のように、私の意図はファイルを読むことでした。それを行う正しい方法は次のとおりです。

Dim fStream As FileStream = New FileStream(destinationPath, FileMode.Open, FileAccess.Read)
于 2013-01-14T21:15:12.653 に答える