vb.. NET文件流问题



我试图从以下行文件创建一个FileStream:

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

当我这样做时,我得到一个错误说

Combining FileMode: Create with FileAccess: Read is invalid.
有谁能帮我一下吗?

编辑:我正在尝试从文件中读取,而不是创建它。

Read访问不允许您对文件进行任何修改。创建文件也算作修改。您将需要使用WriteReadWrite访问。

编辑:当然,还有第二种情况:

如果您试图从一个已经存在的文件中读取,不要使用FileMode.Create。请使用FileMode.Open

如果您正在尝试创建(并可能写入)一个文件,使用FileAccess.WriteFileAccess.ReadWrite将更有意义。

因为CreateRead相矛盾。try New FileStream(destinationPath, FileMode.Create, FileAccess.ReadWrite)

错误消息指出了问题所在:当您创建新文件时,您应该写入其中,而不是从中读取。当您创建一个新文件时,其中没有任何内容可读。

将第三个参数改为FileAccess.Write

对于FileMode.Create,您指定要创建位于destinationPath的文件(如果它已经存在,则重新创建),从而为您提供一个新的空文件。对于新文件,不需要读取任何数据。您应该传递一个包含Write标志的FileAccess值。

如果只能读取文件,如何创建文件?您需要指定对该文件也具有写访问权限。MSDN for FileAccess Try:

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

好的,对不起,它不是很清楚,但正如提到的,我的意图是阅读文件。正确的做法是:

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

相关内容

  • 没有找到相关文章

最新更新