如何从html页面保存xml文件

时间:2012-06-29 10:42:29

标签: c# javascript asp.net html xml

我需要保存一个显示在HTML页面中的XML文档。

场景是这样的:我正在向服务器发送搜索请求,作为回报,我正在获取xml文件,但显示在html页面中。我想要的是使用javascript,asp.net(C#)保存客户端在html表单中显示的xml文件。

请看这个链接(这样的服务器返回文件) http://www.w3schools.com/dom/books.xml

5 个答案:

答案 0 :(得分:0)

您需要将请求中的流保存到xmldoc中。 应该是非常直接的。

看看这里: http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.save(v=vs.100).aspx

另外,这里有一篇关于它的微软文章:

http://support.microsoft.com/kb/307643

答案 1 :(得分:0)

发送的文件应该有一个HTTP标头,表明它要保存,而不是显示。 这样做:

context.Response.ContentType = "application/force-download";

答案 2 :(得分:0)

假设您正在编写客户端应用程序以使用此文件

using System.Net;
new WebClient().DownloadFile("http://www.w3schools.com/dom/books.xml", @"c:\books.xml");

答案 3 :(得分:0)

正如Rutesh所说,你不能使用javascript。使用C#.NET将其保存在服务器上,然后从服务器访问它。其次,您正在谈论的页面不是一个HTML页面,而是一个xml文件。我希望你知道如何构建一个asp.net页面,如果是,那么使用它:

    XmlDocument xdoc = new XmlDocument();
    xdoc.Load("http://www.w3schools.com/dom/books.xml");
    xdoc.Save("myfilename.xml");

快乐的编码!

答案 4 :(得分:0)

sourceResponse.ContentType = "application/octet-stream"; 
byte[] responseContent = "XML File content"
sourceResponse.AddHeader("content-disposition", String.Format("attachment; filename={0}.xml", "yourFileName"));
sourceResponse.BinaryWrite(responseContent);
sourceResponse.End();