我有一個「book.xml」和「book.xslt」輸出已設置爲文本模式,我不想通過瀏覽器加載文本文件,因爲它太重了我需要一些代碼將輸出文本文件保存在硬盤驅動器中。我如何通過c#實現這種轉換?在文件中保存xslt輸出轉換
2
A
回答
4
這應該工作:
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load(@"c:\book.xslt");
xslt.Transform(@"c:\book.xml", @"c:\output.txt");
顯然,你的路將需要更新,以滿足您的特定情況,例如:
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load(Server.MapPath("~/book.xslt"));
xslt.Transform(Server.MapPath("~/book.xml"), Server.MapPath("~/output.txt"));
這將從的根目錄讀取您的XSL文件並將其轉換爲/book.xml
並將其保存到/output.txt
。
你可以找到更多關於這裏的System.Xml.Xsl.XslCompiledTransform
類:
1
使用System.Xml.Xsl.XslCompiledTransform
類。
XslCompiledTransform transform = new XslCompiledTransform();
transform.Load(Server.MapPath("~/book.xslt"));
transform.Transform(Server.MapPath("~/book.xml"), Server.MapPath("~/output.xml"));
(注:這假定所有的文件都存儲在Web應用程序的根目錄)
0
通過使用xmwwriter和的XDocument像這樣:
using System.Data;
using System.Xml;
using System.Xml.XPath;
using System.Xml.Xsl;
public void xmltest(string xmlFilePath, string xslFilePath, string outFilePath)
{
var doc = new XPathDocument(xmlFilePath);
var writer = XmlWriter.Create(outFilePath);
var transform = new XslCompiledTransform();
// The following two lines are only needed if you need scripting.
// Because of security considerations read up on that topic on MSDN first.
var settings = new XsltSettings();
settings.EnableScript = true;
transform.Load(xslFilePath,settings,null);
transform.Transform(doc, writer);
}
此處瞭解詳情: http://msdn.microsoft.com/en-us/library/14689742.aspx
關於
相關問題
- 1. XSLT轉換文件空白輸出
- 2. 無輸出的XSLT轉換
- 3. XSLT轉換輸出順序
- 4. XSLT轉換 - 多個輸入XML文件
- 5. 將輸出保存在xml文件中
- 6. 保存輸出到文件
- 7. 保存輸出到文件
- 8. 保存輸出到文件
- 9. 保存輸出文件
- 10. 保存imagejpeg輸出文件
- 11. 獲取XML格式的xslt轉換文件的輸出
- 12. 來自XSLT轉換的幻像輸出
- 13. XSLT身份轉換不改變輸出
- 14. xslt轉換xml輸出HTML問題
- 15. XSLT:轉換XML文件樹
- 16. XSLT - 用輸出中的轉義文本替換撇號
- 17. 將ELKI輸出保存到文件中
- 18. XSLT - 在副本中保留禁用輸出轉義
- 19. 保存matlab輸出到文本文件
- 20. JSF在轉換前保存輸入值
- 21. 在XSLT轉換輸出中缺少的部分
- 22. XSLT屬性未包含在轉換後的輸出中
- 23. XSLT轉換中的多個文件輸入
- 24. xslt文本禁用輸出轉義
- 25. 轉換 '嵌入式' XML文檔到XSLT CDATA輸出(1.0)
- 26. 條件XSLT轉換
- 27. xslt條件轉換
- 28. XSLT輸出XSLT
- 29. XSLT:輸出條件
- 30. C#文件打開/轉換並保存
是否要保存文件在用戶的機器上,還是要將文件保存到服務器? – 2011-06-13 11:49:23
我只需要在服務器上保存文件。 – kamiar3001 2011-06-13 11:51:27
即將發佈我的答案,但它與Kev's相同..所以不需要 – 2011-06-13 12:01:05