我知道关于此异常,StackOverflow上已经存在多个类似的问题。但是,到目前为止,我还没有找到解决我问题的答案。
在远程服务器上,我创建了TcpListener
的实例。在我的本地计算机上,我正在通过TCP将压缩的文件夹发送到远程服务器。
以下是我的远程服务器上运行的一些代码:
private static void SaveZippedFolder(string zippedFolderPath, int numBytesLeftToReceive)
{
string saveDestination = GetOrCreateDestinationForSavingZippedFolder(zippedFolderPath);
FileStream fileStream = new FileStream(saveDestination, FileMode.OpenOrCreate);
while (numBytesLeftToReceive > 0)
{
// Receive bytes
}
fileStream.Close();
}
private static string GetOrCreateDestinationForSavingZippedFolder(string zippedFolderPath)
{
string directoryName = Path.GetDirectoryName(zippedFolderPath);
if (!Directory.Exists(directoryName))
{
Directory.CreateDirectory(directoryName);
}
return directoryName;
}
由于FileStream fileStream = new FileStream(saveDestination, FileMode.OpenOrCreate);
显然不可访问,因此在saveDestination
行抛出了异常。
我尝试使用方法here重设文件夹的readonly属性,但这无济于事。当我导航到文件夹并右键单击其属性时,可以看到它的只读属性仍处于设置状态。
关于可能还有其他问题的任何想法?