正在开发一个需要将xml文件上传到远程FTP站点的项目。
是否可以将xml字符串从内存保存到远程FTP站点? ...从我看到我必须先将文件写入本地磁盘然后从磁盘和FTP读取到远程站点。
我正在使用c#。
谢谢。
答案 0 :(得分:3)
完全可以使用MemoryStream而不是FileStream将数据“写入”到FTP服务器。
从我的头脑中:(只是一段代码,我认为你已经拥有了FTP的东西)
var data = ASCIIEncoding.ASCII.GetBytes(yourXmlString);
using (var dataStream = new MemoryStream(data))
using (var requestStream = ftpRequest.GetRequestStream())
{
contentLength = dataStream.Read(buffer, 0, bufferLength);
while (contentLength != 0)
{
requestStream.Write(buffer,0,bufferLength);
contentLength = dataStream.Read(buffer, 0, bufferLength);
}
}
换句话说,你只需要一个流,无论是FileStream还是MemoryStream都无关紧要