首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xmltextw区保存文件-指定主机名或服务器名

Xmltextw区保存文件-指定主机名或服务器名
EN

Stack Overflow用户
提问于 2013-02-07 02:04:20
回答 1查看 461关注 0票数 0

我试图将XML文件保存在服务器上,并通过FTP将其发送到另一个远程服务器。要创建/保存XML文件,我将使用

代码语言:javascript
复制
XmlWriter writer = XmlWriter.Create("d:\\path\\to\\folder\\filename.xml");

上传到FTP。

FtpWebRequest reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(filename);

一切都很好。它创建XML文件,保存到文件夹,正确发送到FTP。但是现在我在部署代码时遇到了麻烦。我们有一个负载均衡器和两个prod服务器。所以我不知道现在它会在哪里省下来。由于它可能无法在另一台服务器上使用,所以我可能得到404。

在保存XML文件时,是否可以在文件位置之前指定servername?基本上,我想要一个公共位置说明符来查找类似的主机名/ipaddress以及已经实现的代码。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-11 23:19:43

我以不同的方式解决了这个问题。我找不出一个共同的位置,所以我试着消除对一个共同位置的需求。

我使用MemoryStream对象,并将我的XML文件存储在内存中而不是服务器中,然后从那里发送出去。这样就不需要保存到本地路径了。更多示例代码如下所示。

代码语言:javascript
复制
 StringBuilder builder = new StringBuilder() ;                
    XmlWriterSettings settings = new XmlWriterSettings();
    settings.Encoding = Encoding.UTF8;
    settings.Indent = true;
    using (XmlWriter writer = XmlWriter.Create(builder, settings))
         {                    
            writer.WriteProcessingInstruction("xml", "version=\"1.0\" encoding=\"utf-8\"");
            writer.WriteStartElement("mainElem");
            writer.WriteStartElement("elem");
            writer.WriteElementString("var1", "data");
            writer.WriteElementString("var2", "data");
            writer.WriteEndElement();
            writer.WriteEndElement();
            writer.WriteEndDocument();
            writer.Flush();
            writer.Close();
        }
 byte[] a = System.Text.Encoding.UTF8.GetBytes(builder.ToString());
 MemoryStream stream = new MemoryStream(a);
 return stream;

张贴在这里,以防其他人遇到类似的情况。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14742344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档