这个是类的一部分import java.io.*;
import javax.xml.transform.*;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import org.jdom.*;
import org.jdom.input.*;
import org.jdom.output.*;
public static void outputToFile(Document myDocument,String filePath,String encoding) {
//setup this like outputDocument
try {
XMLOutputter outputter = new XMLOutputter(" ", true,encoding); //output to a file
FileWriter writer = new FileWriter(filePath);
outputter.output(myDocument, writer);
writer.close(); } catch(java.io.IOException e) {
e.printStackTrace();
}
}
在这个方法里XMLOutputter outputter = new XMLOutputter(" ", true,encoding);总是不成功。。
XMLOutputter outputter = new XMLOutputter();这样就ok。但不能达到我的目的,
为什么会这样。
我的jdom是jdom1.0是不是版本有问题。
在网上看到最新版是beta8的。但我是在官方网站下的最新的。并没找到beta8版本。
import javax.xml.transform.*;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import org.jdom.*;
import org.jdom.input.*;
import org.jdom.output.*;
public static void outputToFile(Document myDocument,String filePath,String encoding) {
//setup this like outputDocument
try {
XMLOutputter outputter = new XMLOutputter(" ", true,encoding); //output to a file
FileWriter writer = new FileWriter(filePath);
outputter.output(myDocument, writer);
writer.close(); } catch(java.io.IOException e) {
e.printStackTrace();
}
}
在这个方法里XMLOutputter outputter = new XMLOutputter(" ", true,encoding);总是不成功。。
XMLOutputter outputter = new XMLOutputter();这样就ok。但不能达到我的目的,
为什么会这样。
我的jdom是jdom1.0是不是版本有问题。
在网上看到最新版是beta8的。但我是在官方网站下的最新的。并没找到beta8版本。
<?xml version="1.0" encoding="UTF-8"?>
<電気設備><buhin><name>空調</name><suryo>2</suryo><tani>台</tani><price>100000</price><sum_prices>200000</sum_prices></buhin></電気設備>
并没有换行。。
我想让他变成这样:<?xml version="1.0" encoding="UTF-8"?>
<电器>
<buhin>
<name>空調</name>
<suryo>2</suryo>
<tani>台</tani>
<price>100000</price>
<sum_prices>200000</sum_prices>
</buhin>
</电器>
怎么控制
1、XMLOutputter outputter = new XMLOutputter(" ", true,encoding);
可以试一试这个方法
XMLOutputter outputter = new XMLOutputter(" ",true);//那个encoding是编码,不用管它2、Writer接口不是推荐的输出接口,可以换作OutputStream接口。
FileOutputStream test = new FileOutputStream(new File("your fileurl"));
XMLOutputter的3个参数的构造方法已经没有了
现在使用的是Format类
Format format = Format.getCompactFormat();
format.setEncoding("gb2312"); //设置xml文件的字符为gb2312
format.setIndent(" ");//设置缩进
XMLOutputter XMLOut = new XMLOutputter(format);//在元素后换行,每一层元素缩排四格
XMLOut.output(doc, new FileOutputStream("guestbook.xml"));//输出到文件
这个也可以你看这个例子
http://www.jspcn.net/htmlnews/11049409552961965.html