问题描述
System.Net.WebClient oClientFTP = new System.Net.WebClient();
oClientFTP.Credentials = new System.Net.NetworkCredential("user","password");
oClientFTP.DownloadFile("ftp://192.168.0.10/files/test.pdf","test.pdf");
oClientFTP.dispose();
文件被正确复制但没有被释放,我尝试做的任何事情都告诉我该文件正在被另一个应用程序使用。我尝试使用 ProcessExplorer 但它没有解决问题。 我也尝试将文件复制到另一个文件,但问题是一样的。 复制后如何释放文件?
解决方法
我使用流解决了这个问题,然后我将其写入文件。
using (MemoryStream stream = new MemoryStream(oClientFTP.DownloadData(cFtp +cNomefile)))
{
using (FileStream outputFileStream = new FileStream(cNomefile,FileMode.Create))
{
stream.CopyTo(outputFileStream);
}
}