急,ftp下载文件问题
string server = ftpip;
string username = ftpusername;
string password = ftppassword;
FtpWebRequest request =
(FtpWebRequest)WebRequest.Create(server);
request.Credentials = new NetworkCredential(username, password);
request.Method = WebRequestMethods.Ftp.ListDirectory;
response = (FtpWebResponse)request.GetResponse();
stream = response.GetResponseStream();
// 获取文件列表;
StreamReader reader = new StreamReader(stream);
string content = reader.ReadToEnd();
string[] files = content.Split('\n');
int s = files.Length;
reader.Close();
//下载列表文件
serverDirectory = null;
Uri baseUri = new Uri(server);
if (File.Exists(xmlad ))
{
File.Delete(@xmlad);
}
for (int i = 0; i <= s - 2; i++)
{
if (File.Exists(downaddress + @"\" + files[i]))
{
//i++;
}
else
{
string filename = files[i].ToString().Trim();
string fullFilename = serverDirectory + @"/" + filename;
Uri uri = new Uri(baseUri, fullFilename);
request = (FtpWebRequest)WebRequest.Create(uri);
request.Credentials = new NetworkCredential(username, password);
request.Method = WebRequestMethods.Ftp.DownloadFile;
response = (FtpWebResponse)request.GetResponse();
inStream = response.GetResponseStream();
// inStream.Length
File.Create(downaddress + filename);
outStream = File.OpenWrite(downaddress+ @"\" + filename);
byte[] buffer = new byte[1024];
int size = 0;
while ((size = inStream.Read(buffer, 0, 1024)) > 0)
{
outStream.Write(buffer, 0, size);
}
outStream.Flush();
outStream.Close();
}
用这段代码下载文件,如果文件已经存在,能否改写?