我需要保存显示在 HTML 页面中的 XML 文档。
场景是这样的:我正在向服务器发送搜索请求,作为回报,我得到了 xml 文件,但显示在 html 页面中。我想要的是使用javascript,asp.net(C#)将显示在html表单中的xml文件保存在客户端。
请看这个链接(像这样的服务器返回文件) http://www.w3schools.com/dom/books.xml
我需要保存显示在 HTML 页面中的 XML 文档。
场景是这样的:我正在向服务器发送搜索请求,作为回报,我得到了 xml 文件,但显示在 html 页面中。我想要的是使用javascript,asp.net(C#)将显示在html表单中的xml文件保存在客户端。
请看这个链接(像这样的服务器返回文件) http://www.w3schools.com/dom/books.xml
您需要将请求中的流保存到 xmldoc 中。应该非常直截了当。
看看这里: http: //msdn.microsoft.com/en-us/library/system.xml.xmldocument.save (v=vs.100).aspx
另外,这里有一篇关于它的微软文章:
发送的文件应该有一个 HTTP 标头,表明它是要保存的,未显示。这样做:
context.Response.ContentType = "application/force-download";
假设您正在编写一个客户端应用程序来使用此文件
using System.Net;
new WebClient().DownloadFile("http://www.w3schools.com/dom/books.xml", @"c:\books.xml");
正如 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");
快乐编码!
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();