求思路:3台服务器之间文件的传输。
现在有3台服务器,分别为:UPLOAD,FTP,WEB基本要求是:WEB访问FTP服务器下的目录,检查文件。可以执行操作,复制FTP服务器下的文件到UPLOAD服务器目录下。
要怎么去做??
file类吗? 远程文件好读?文件传输怎么做?流处理吗? --------------------编程问答-------------------- LZ思路有些混乱,当时部署服务器的目的是什么,为什么现在需要在FTP服务器下复制文件到Upload服务器下。 --------------------编程问答-------------------- 服务器上设置文件夹共享,用File.Copy("\\192.168.0.1\xxx\xx.xx", "\\192.168.0.2\xxx\xx.xx"); --------------------编程问答-------------------- 我觉得用文件流的形式传输吧
public static UploadResultInformation UploadToFtpServer(string fileName, Stream fs, string imagePath)
{
UploadResultInformation result = new UploadResultInformation();
if (IsFileExist(imagePath+fileName)) //判斷文件是否已存在
{
throw new FileAlreayExistsException();
}
FtpWebRequest uploadRequest = (FtpWebRequest)WebRequest.Create(new Uri(imagePath + fileName));
uploadRequest.Method = WebRequestMethods.Ftp.UploadFile;
uploadRequest.Credentials = new NetworkCredential(userName, password);
uploadRequest.KeepAlive = false; //執行一個命令后關閉連接.
uploadRequest.UseBinary = true;
Stream requestStream = uploadRequest.GetRequestStream();
byte[] buffer = new byte[1024];
int bytesRead;
while (true)
{
bytesRead = fs.Read(buffer, 0, buffer.Length);
if (bytesRead == 0)
{
break;
}
requestStream.Write(buffer, 0, bytesRead);
}
requestStream.Close(); //關閉流
result.FilePathName = imagePath + fileName;
result.ServerAdress = ftpAddress;
result.FullPathName = result.FilePathName;
result.FileName = fileName;
return result;
}
UploadResultInformation 是自定义类 --------------------编程问答-------------------- 硬盘拼接吧。 --------------------编程问答-------------------- 没搞明白这么做的目的。。防盗链?
补充:.NET技术 , ASP.NET