急(再加分):用java生成xml问题,用记事本看是一行?怎么解决?

急(再加分):用java生成xml问题,用记事本看是一行?怎么解决?,第1张

用ie可以显示,结构很清晰,说明你的程序是没有问题的啊

既然记事本打开是一行 很可能是记事本没有很好的处理过来

你也可以尝试用其他的软件打开试试看 不如说是 写字板等等

只要程序没有问题就行 很可能是软件的问题

补充:

既然想要输出换行 你可以在一开始设置为自动换行

参考实例:

public static void OutputToFile(Document myDocument, String filePath,String encoding)

{

try {

XMLOutputter outputter =new XMLOutputter("", true, encoding)

//这里true就是设置自动换行

FileWriter writer=new FileWriter(filePath)

outputter.output(myDocument, writer)

writer.close()

}

catch (java.io.IOException e) {

e.printStackTrace()

}

}

*********************************************

回复:

想在输出的时候换行,可以在你想要换行的地方加上换行分隔符"\r\n"

然后再用XmlOutput类 输出成xml文件就可以了

你还可以设置自动换行

xmldoc.Options := [doNodeAutoIndent]

{*--这个属性只有在选项里设置了doNodeAutoIndent标识为真(True)后才有效,这个标识的缺省状态为非真(False).--*}

您可以参见参考资料

*********************************************

/*

这里使用了dom4j组件,你需要自己去下载dom4j。

其中a.xml是你的源文件

这个程序没有向磁盘中创建一个新文件,你可以自己修改代码。

例如:

XMLWriter xmlWriter = new XMLWriter(new PrintWriter(System.out), format)

可以修改为

XMLWriter xmlWriter = new XMLWriter(new FileWriter("a.xml"), format)

这样就可以修改源文件a.xml了。

*/

import org.dom4j.*

import org.dom4j.io.OutputFormat

import org.dom4j.io.XMLWriter

import org.dom4j.io.SAXReader

import java.io.*

public class Test {

public static void main(String[] args) {

SAXReader saxReader = new SAXReader()

try {

Document doc = saxReader.read(new File("a.xml"))

doc.getRootElement().addElement("PARAM")

.addElement("TASKLIST").addElement("TASK")

.addElement("DATA_TRAN_ID").addCDATA("14595")

OutputFormat format = OutputFormat.createPrettyPrint()

format.setEncoding("gb2312")

XMLWriter xmlWriter = new XMLWriter(new PrintWriter(System.out), format)

xmlWriter.write(doc)

xmlWriter.close()

} catch (DocumentException e) {

e.printStackTrace()

} catch(IOException e) {

e.printStackTrace()

}

}

}

根据传入的List<Deploy>deploies参数来配置多个person对象信息

结果是这样的:

<data>

<person id="1">

<email></email>

<password></password>

<pop3></pop3>

<smtp></smtp>

</person>

<person id="2">

<email></email>

<password></password>

<pop3></pop3>

<smtp></smtp>

</person>

<person id="3">

<email></email>

<password></password>

<pop3></pop3>

<smtp></smtp>

</person>

</data>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11907614.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存