Java 为什么Dom4JDriver在xml内容的开头添加一个换行符?

Java 为什么Dom4JDriver在xml内容的开头添加一个换行符?,java,xstream,dom4j,Java,Xstream,Dom4j,我正在使用XStream库(1.4.10)和Dom4jDriver从Java对象生成xml内容。问题是它在内容的开头追加了一行新行。要关掉这个吗 Dom4JDriver dom4JDriver = new Dom4JDriver(); dom4JDriver.getOutputFormat().setSuppressDeclaration(true); XStream xStream = new XStream(dom4JDriver); xStream.pro

我正在使用XStream库(1.4.10)和Dom4jDriver从Java对象生成xml内容。问题是它在内容的开头追加了一行新行。要关掉这个吗

    Dom4JDriver dom4JDriver = new Dom4JDriver();
    dom4JDriver.getOutputFormat().setSuppressDeclaration(true);

    XStream xStream = new XStream(dom4JDriver);
    xStream.processAnnotations(MyClass.class);
    String myContent = xStream.toXML(myClassInstance); //extra '\n' appended at the start of the string
MyClass.class:

@XStreamAlias("myClass")
public class MyClass{

  private String something;

  private String somethingElse;
...........
生成的xml:

\n<myClass>\n <something>blabla</something>\n......
\n\n blabla\n。。。。。。

我知道我可以用myContent.subString(…)来去掉第一个字符,但对我来说它看起来并不干净。我在很多运营中也这样做,所以为了性能,我不希望从这条线路开始。有什么建议吗?谢谢:)

您试过用DomDriver代替Dom4JDriver吗?

谢谢。成功了。我本来希望保留Dom4JDriver,因为它具有性能优势,但工作最终完成了:)