XMLがいくつかあるので、それらをMicrosoft Officeドキュメント(2007)に変換する必要があります。それを行うための最良かつ最速の方法は何ですか?C#またはJavaを使用してそれを行うことができます。私はその尖塔を見てきました。私はそれを行うことができますが、それはかなり高価です、代替手段はありますか?マイクロソフトは何かを提供していますか?
質問する
6612 次
1 に答える
4
XSLT を使用することもできます。Christian Nagel の OneNotes にすばらしいサンプルがあります。
この XML を取得する
<?xml version="1.0" encoding="utf-8" ?>
<Courses>
<Course Number="MS-2524">
<Title>XML Web Services Programming</Title>
</Course>
<Course Number="MS-2124">
<Title>C# Programming</Title>
</Course>
<Course Number="NET2">
<Title>.NET 2.0 Early Adapter</Title>
</Course>
</Courses>
この XML スタイル シートを使用すると、次のようになります。
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml">
<xsl:output method="xml" indent="yes" />
<xsl:template match="/">
<xsl:processing-instruction name="mso-application">
<xsl:text>progid="Word.Document"</xsl:text>
</xsl:processing-instruction>
<w:wordDocument>
<w:body>
<xsl:apply-templates select="Courses/Course" />
</w:body>
</w:wordDocument>
</xsl:template>
<xsl:template match="Course">
<w:p>
<w:r>
<w:t>
<xsl:value-of select="@Number" />, <xsl:value-of select="Title"/>
</w:t>
</w:r>
</w:p>
</xsl:template>
</xsl:stylesheet>
この MS Word Doc を 2003 用に生成できます。
<?xml version="1.0" encoding="utf-8"?>
<?mso-application progid="Word.Document"?>
<w:wordDocument xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml">
<w:body>
<w:p>
<w:r>
<w:t>MS-2524, XML Web Services Programming</w:t>
</w:r>
</w:p>
<w:p>
<w:r>
<w:t>MS-2124, C# Programming</w:t>
</w:r>
</w:p>
<w:p>
<w:r>
<w:t>NET2, .NET 2.0 Early Adapter</w:t>
</w:r>
</w:p>
</w:body>
</w:wordDocument>
コードでこれを行うには、この回答を参照してください: https://stackoverflow.com/a/34095/30225
Office 2007 docx に相当するものを使用するか、2003 のドキュメントを生成して 2007 で開くようにする必要があります。
于 2012-05-09T03:11:30.180 に答える