Vb.net 将 xml 转换为文本的应用程序

Vb.net application to convert xml to text

需要帮助创建控制台应用程序以从文件夹读取 xml 文件并将它们转换为文本文件并使用 xsl 文件将它们保存在单独的文件夹中进行转换。

我尝试了多种选择,但没有任何效果。以下是我目前拥有的。

        For Each xmlFile As System.IO.FileInfo In xmlFiles

            'Do some data processing here
            Document = New XmlDocument()

            Document.Load(xmlFile.FullName)
            navigator = Document.CreateNavigator

            Dim reade As XmlReader = XmlReader.Create(xmlFile.FullName)
            transformer = New XslCompiledTransform
            transformer.Load("C:\Sample_XML_Files\Sample_XML_Files\Testing.xslt")
            output = New StringWriter()
            transformer.Transform(reade, Nothing, output)

            Dim stream As FileStream = New FileStream(xmlFile.DirectoryName + "\Out\" + xmlFile.Name + ".text", FileMode.Create)

            Dim writer As StreamWriter = New StreamWriter(stream)
            writer.Write(output.ToString)

            MessageBox.Show(output.ToString)
            writer.Close()
            output.Close()

        Next

解决此问题的任何帮助都会有所帮助。

尝试使用仅采用两个字符串参数(输入文件和目标文件)的 Transform 方法。这样你就可以消除所有 reader/stream 的东西。 Public 子转换(inputUri 作为字符串,resultsFile 作为字符串)

我假设您已经通过 xml 记事本或其他可以使用 Microsoft 的 xslt 解析器的交互式 xslt 处理程序直接尝试通过 xslt 进行 xml 转换。这将消除作为问题根源的 xml/xslt 转换本身。

或者,您可以使用不同的 xslt 引擎来完成您的工作。