2009-10-19 111 views
49

好吧,這似乎是一個愚蠢的問題,但我無法弄清楚。我正在編寫一個XSLT文件來將XML文檔翻譯成XHTML文檔。我已經使用Visual Studio和XML Notepad 2007來預覽我的XSLT文件的結果,但是現在我想要寫出一個真正的XHTML文件,以便我可以看到它在其他瀏覽器中的外觀。如何運行XSLT文件?

Visual Studio或XML NotePad都沒有明顯的方法來保存預覽。我錯過了什麼。很明顯,該文件正在創建,因爲正在預覽的東西,但我需要知道該文件正在創建的位置或更好的選擇它的位置。

回答

22

在Visual Studio中的XML文件添加到項目中。打開XML文件。當文件打開並且其窗口處於活動狀態時,您應該在「屬性」窗口中看到您可以指定輸出文件名和樣式表。另外,您應該看到菜單欄現在包含一個「XML」項目。

如果您從「XML」菜單中選擇「顯示XSLT輸出」,VS會將指定的轉換應用於XML文件,將其輸出寫入您指定的文件,然後打開該文件。如果該文件具有.xml擴展名,它將在文本編輯器窗口中打開它;如果它有一個.htm擴展名,它將在瀏覽器窗口中打開它。

這有點笨重(在我看來,一個菜單出現並消失而不是被啓用/禁用是有點h)的),但它運行得很好,而且它在你已經使用的工具中。

+0

嗯,我看到菜單點「顯示XSLT輸出」。運行VS2012。我錯過了什麼嗎? – 2013-08-13 10:48:03

5

如果你不介意的命令行和XSLT 1.0是你想要什麼:msxsl.exe

+0

對於windows,我寧願推薦1.0版的NXSLT 3.0,當然還有2.0版的Saxon。 – 2009-10-21 17:08:21

+0

NXSLT更好的原因是什麼? (剛剛感興趣。) – Tomalak 2009-10-22 08:39:15

+0

+1是我當時使用的解決方案,但羅伯茨解決方案本來會更好。 – 2009-10-23 20:06:40

31

你有兩個選擇:

  1. 讓瀏覽器做到這一點。將XML與參考XSLT和瀏覽器(IE 6或更低的可能有問題)將呈現爲(X)HTML:

    <?xml-stylesheet type="text/xsl" href="http://www.example.com/my-xslt.xsl" ?>

  2. 做它的服務器端。大多數語言都有接受XSLT和XML數據,然後輸出(X)HTML的方法。這裏有一些選擇:

alt text

1

有許多第三方軟件。其中之一是「氧XML編輯器」。 在這個軟件,簡單地說:

  1. 打開您的.xml
  2. 工具欄中打開.xslt
  3. 點擊「運行」爲看到的結果(產出將在右圖)。
  4. 如果要保存結果,請右鍵單擊結果右側面板並選擇「保存...」
  5. 如果您有問題,可能需要在工具欄中更改處理:「Xalan,Saxon,Saxon- HE,saxon-PE,...「
+0

這是相當昂貴的(從99美元起),所以可能會有更好的答案幫助更多的人。 – dakab 2015-12-27 08:18:35

+0

@dakab你是對的!但這是答案之一,也許有人幫助! – 2015-12-27 09:08:01

+0

在C#領域有一些很好的文章,例如:[link](http://web.archive.org/web/20130329123237/http://www.csharpfriends.com/Articles/getArticle.aspx?articleID = 63)'文章' – 2015-12-27 09:12:38