以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XML基础 』  (http://bbs.xml.org.cn/list.asp?boardid=1)
----  XML将结果输出到字符串里的使用方法  (http://bbs.xml.org.cn/dispbbs.asp?boardid=1&rootid=&id=10646)


--  作者:卷积内核
--  发布时间:9/27/2004 4:31:00 PM

--  XML将结果输出到字符串里的使用方法
XslTransform.Transform 方法如何将结果输出到字符串里?
--------------------------------------------------------------------------------

XslTransform.Transform 方法将结果输出到字符串里有2中办法:


通过System.IO.MemoryStream类来实现。
通过System.Text.StringBuilder类来实现。

下面是具体的实现方法:

System.Xml.Xsl.XslTransform RssXslt = new System.Xml.Xsl.XslTransform();
System.Xml.XmlDocument RssXml = new System.Xml.XmlDocument();
RssXslt.Load(Server.MapPath("RssReader.xslt"));
RssXml.Load(Server.MapPath("Rss.xml"));
System.IO.MemoryStream t = new System.IO.MemoryStream();
RssXslt.Transform(RssXml,null,t,null);
string resultString = System.Text.UTF8Encoding.UTF8.GetString(t.ToArray());
Response.Write(resultString);

System.Xml.Xsl.XslTransform RssXslt = new System.Xml.Xsl.XslTransform();
System.Xml.XmlDocument RssXml = new System.Xml.XmlDocument();
RssXslt.Load(Server.MapPath("RssReader.xslt"));
RssXml.Load(Server.MapPath("Rss.xml"));
System.Text.StringBuilder t = new System.Text.StringBuilder();
RssXslt.Transform(RssXml,null,new System.IO.StringWriter(t),null);
string resultString = t.ToString();
Response.Write(resultString);

[此贴子已经被作者于2004-9-29 14:42:50编辑过]

--  作者:卷积内核
--  发布时间:9/29/2004 3:04:00 PM

--  
这个很有用的,怎么关心的这么少??
--  作者:kingbillow
--  发布时间:9/29/2004 4:50:00 PM

--  
刚看到,很不错
--  作者:jeeq
--  发布时间:5/12/2006 11:12:00 AM

--  
我从oracle的blob字段中取出xml再结合xsl输出到字符串中后用Response.Write()写在页面test.aspx中,再把test.aspx做为容器在另外的一个页面test1.aspx中使用<embed>嵌入test.aspx页面并以.svg为后缀,最后在test2.aspx中显示svg图象。以上就是我的思路~

现在的问题出在我输出到字符串后用response的时候写在test.aspx页面时总是会出现xml格式不对的问题,例如换行等,把其粘贴到xmlspy中看效果,只要把一些换行的情况解决了就可以正常显示,这是什么问题啊???


--  作者:jeeq
--  发布时间:5/12/2006 11:47:00 AM

--  
顶上去 !!!
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
695.313ms