【发布时间】:2012-02-22 14:40:59
【问题描述】:
XML 可以通过浏览器使用 XSL 进行转换。 这可以通过在 xml 中引用 xsl 来完成 在 xml 文件中添加以下行:
<?xml-stylesheet type='text/xsl' href='sample.xsl'?>
现在用 Internet Explorer 打开这个 xml 文件将在浏览器中显示正确的数据。
XML 本身引用了许多其他文件,例如图片位于某个文件夹中。
我想将显示的数据(连同所有引用的数据)保存在一个中 mhtml 文件 (*.mht)
我该如何进行?这可能吗?
注意:文件都是本地的(不在服务器上),初始 xml 是测试数据的结果。 我只是希望我的 XML 文件能够像以前一样从单个文件开始正确显示,而无需访问 mhtml 文件之外的其他数据。
根据答案 1 进行编辑:
我已将我的 xml 包含在 HTML 的 iFrame 中:
<body><iframe src="name.xml" width = "100%" height="1000">
</iframe></body>
这是我使用 IE 保存到 *.mht 文件中的:
From: <Saved by Windows Internet Explorer 7>
Subject: XML-Test
Date: Wed, 22 Feb 2012 14:47:34 +0100
MIME-Version: 1.0
Content-Type: multipart/related;
boundary="----=_NextPart_000_0000_01CCF170.E99B1DF0"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157
This is a multi-part message in MIME format.
------=_NextPart_000_0000_01CCF170.E99B1DF0
Content-Type: text/html;
charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable
Content-Location: file://C:\Documents and Settings\STEFFAN\Desktop\Test\XML-Test.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>XML-Test</TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dwindows-1252">
<META content=3D"MSHTML 6.00.6000.17107" name=3DGENERATOR></HEAD>
<BODY><IFRAME=20
src=3D"http://www.m.de/name.xml"=20
width=3D"100%" height=3D1000>
</IFRAME></BODY></HTML>
------=_NextPart_000_0000_01CCF170.E99B1DF0
Content-Type: text/xml;
charset="unicode"
Content-Transfer-Encoding: base64
Content-Location: http://www.m.de/name.xml
//48ACEARABPAEMAVABZAFAARQAgAEgAVABNAEwAIABQAFUAQgBMAEkAQwAgACIALQAvAC8AVwAz
AEMALwAvAEQAVABEACAASABUAE0ATAAgADQALgAwACAAVAByAGEAbgBzAGkAdABpAG8AbgBhAGwA...
由于我最初使用本地文件而不是“http://www.m.de/name.xml”,因此输出了“file://C:\Documents and Settings\STEFFAN\Desktop\Test\SUPL_TCLog.xml”通过 IE。
但是这个本地引用似乎不适用于 mhtml,这很糟糕,因此,我使用了一个随机替代 (http://www.m.de/name.xml) 来代替它。 (这适用于图像文件)。相应地更改它打开 mht 文件将开始下载 xml 文件。但这不是想要的。我希望它显示出来。
缺少什么?
【问题讨论】: