[英]Error reading Stream in C#
在我的应用程序中,我试图从文件系统读取流。 这是我的方法:
public Stream ReadStream (string path)
{
return new FileStream (path, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);
}
该方法有时可以工作,但大多数情况下会遇到以下异常:
Sharing violation on path /data/data/MyPath/11.png
at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean anonymous, FileOptions options) [0x00000] in <filename unknown>:0
at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share) [0x00000] in <filename unknown>:0
你能帮助我吗? 非常感谢!
FileShare.None
表示如果系统上的其他任何文件在同一文件上打开了文件句柄,则将无法打开流。 这也意味着,只要打开句柄,其他进程将无法打开文件。
解决方案取决于您的需求,但是您可以例如将其更改为FileShare.Read
以禁止其他进程与您同时写入文件,但仍允许他们打开文件进行读取。
而且,查看您函数的名称,我想您可以将其替换为File.OpenRead
。
编辑:刚注意到您的问题是关于单声道,我不确定我在这里说的是否成立。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.