我有许多小的XML块,应该将它们作为子元素嵌入到一个大XML中。有什么办法可以在XMLStreamWriter
不转义的情况下将这些块写入其中?
以下是处理此问题的几个选项:
javax.xml.transform.Transformer
您可以使用javax.xml.transform.Transformer
来将StreamSource
表示您的XML片段的表示形式转换StAXResult
为封装您的XML片段XMLStreamWriter
。
OuputStream
另外,您可以执行以下操作。您可以利用flush()
强制XMLStreamWriter
来输出其内容。然后您会注意到,在将嵌套XML编写xsw.writeCharacters("")
为bar
之前,我这样做会强制start元素结束String
。需要清除下面的示例代码以正确处理编码问题。
import java.io.*;
import javax.xml.stream.*;
public class Demo {
public static void main(String[] args) throws Exception {
OutputStream stream = System.out;
XMLOutputFactory xof = XMLOutputFactory.newFactory();
XMLStreamWriter xsw = xof.createXMLStreamWriter(stream);
xsw.writeStartDocument();
xsw.writeStartElement("foo");
xsw.writeStartElement("bar");
/* Following line is very important, without it unescaped data
will appear inside the <bar> tag. */
xsw.writeCharacters("");
xsw.flush();
OutputStreamWriter osw = new OutputStreamWriter(stream);
osw.write("<baz>Hello World<baz>");
osw.flush();
xsw.writeEndElement();
xsw.writeEndElement();
xsw.writeEndDocument();
xsw.close();
}
}
问题内容: 我试图将XML 存储到XML文件中,以便稍后可以检索信息,然后将其显示回控制台。 有人可以告诉我最有效的方法吗? 编辑: 这是我要写入外部文件的内容 这一切都创建了一个Bank用户,该用户被扔到中,然后我想存储他们的信息,以便稍后返回并重新显示。 问题答案: //根据需要修改下面的类 //下面的类实际写了
这是我的字符串格式的肥皂xml,我需要如何在Farm对象中形成它。Farm是我的自定义类,任何库都是现成的 使用此代码后,我得到了异常 意外元素(uri:“http://yyyyyy . yyyyy * * * * * * * *”,local:“farm”)。预期的元素有
这是一个简单的问题。但是我不能调试它。我有类“Adding.java”,它将一些数据添加到ArrayList 另一个类“WriteFile.java”创建了一个xml文件 当我执行此操作时,我得到以下输出 等等但我希望最终输出是这种形式的 “for”循环在“list”元素上迭代有什么问题吗。感谢您的帮助。提前感谢
问题内容: 我有一些XML文本希望在HTML页面中呈现。这段文字包含一个&符号,我想以其实体表示形式呈现。 如何在源XML中转义此“&”号?我试过了,但这被解码为实际的&字符(),在HTML中是无效的。 因此,我想以一种在使用XML输出的网页中进行呈现的方式对其进行转义。 问题答案: 当您的XML包含时,这将导致文本。 当您在HTML中使用该代码时,该代码将显示为。
在output.csv的第2行,转义字符和引号(“”)一起丢失了。我的要求是在output.csv中也保留转义字符。任何形式的帮助都将非常感谢。 提前谢了。
问题内容: 我试图使用Razor将对象作为JSON写入我的Asp.Net MVC视图,如下所示: 问题是在输出中对JSON进行了编码,而我的浏览器不喜欢它。例如: 如何让Razor发出未编码的JSON? 问题答案: 你做: 在Beta 2之前的版本中,您这样做是: