我正在尝试使用Apache Commons Configuration XML类,我想我有一个基本的配置编写器。现在我需要正确缩进XML输出。
我尝试过实现此other post的解决方案(dfa的回答)。我遇到的问题是XML数据是用换行符写出来的,因此它不会作为单行传递给prettyFormat类,也不会缩进数据。相反,它只是像以前一样写出来。
以下是制作配置文件的代码:
import java.io.StringWriter;
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.XMLConfiguration;
public class Config {
public static void load () {
XMLConfiguration xmlConfig = new XMLConfiguration();
xmlConfig.setRootElementName("config");
xmlConfig.addProperty("vmware.ssh.username", "root");
xmlConfig.addProperty("vmware.ssh.password", "password");
StringWriter sw = new StringWriter();
// Save the XML data to StringWriter.
try {
xmlConfig.save(sw);
} catch (ConfigurationException ce) {
ce.printStackTrace();
}
String xmlOutput = XMLtransform.prettyFormat(sw.toString(), 2);
System.out.print(xmlOutput);
}
}
我可能还应该提到我的Java技能仍然有些新手。