我们可以使用Jackson的X
ml
Mapper类将X
ML
字符串转换为Java对象,并使用X
ml
Mapper中的writeValueAsString方法将Java对象转换回漂亮格式的X
ML
字符串。以下是示例代码:
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
import com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator;
public class XmlFormatter {
public static String formatXml(String xmlString) throws IOException {
// 创建XmlMapper对象
XmlMapper xmlMapper = new XmlMapper();
xmlMapper.configure(ToXmlGenerator.Feature.WRITE_XML_DECLARATION, true);
// 将XML字符串转换为Java对象
Object obj = xmlMapper.readValue(xmlString, Object.class);
// 使用XmlMapper将Java对象转换为漂亮格式的XML字符串
return xmlMapper.writerWithDefaultPrettyPrinter().writeValueAsString(obj);
在上面的代码中,我们首先创建了XmlMapper对象并配置了写XML声明的选项。然后使用XmlMapper将XML字符串转换为Java对象,并使用writeValueAsString方法将Java对象转换回漂亮格式的XML字符串。最后,我们将其作为字符串返回。