如何unformat xml文件 [英] How to unformat xml file
问题描述
我有一个返回格式为xml的 String
的方法。该方法从服务器上的文件中读取xml,并将其解析为字符串:
实际上目前的方法是:
private ServletConfig config;
InputStream xmlIn = null;
xmlIn = config.getServletContext()。getResourceAsStream(filename +.xml);
String xml = IOUtils.toString(xmlIn);
IOUtils.closeQuietly(xmlIn);
return xml;
我需要做的是添加一个新的输入参数,并根据该值继续返回格式化的XML,或返回无格式的XML。
我的意思是格式化的xml是这样的:
< ; XML>
< root>
< elements>
< elem1 />
< elem2 />
< elements>
< root>
< / xml>
我的意思是无格式的xml是这样的:
< xml>< root>< elements>< elem1 />< elem2>< elements>< root>< / xml> ;
或:
< XML>
< root>
< elements>
< elem1 />
< elem2 />
< elements>
< root>
< / xml>
是否有一个简单的方法可以做到这一点?
使用去掉所有换行符字符串xml = IOUtils.toString(xmlIn).replace(\\\
。或者
,) \ t
保留几行,但没有缩进。
I have a method which returns a String
with a formatted xml. The method reads the xml from a file on the server and parses it into the string:
Esentially what the method currently does is:
private ServletConfig config;
InputStream xmlIn = null ;
xmlIn = config.getServletContext().getResourceAsStream(filename + ".xml") ;
String xml = IOUtils.toString(xmlIn);
IOUtils.closeQuietly(xmlIn);
return xml;
What I need to do is add a new input argument, and based on that value, continue returning the formatted xml, or return unformatted xml.
What I mean with formatted xml is something like:
<xml>
<root>
<elements>
<elem1/>
<elem2/>
<elements>
<root>
</xml>
And what I mean with unformatted xml is something like:
<xml><root><elements><elem1/><elem2/><elements><root></xml>
or:
<xml>
<root>
<elements>
<elem1/>
<elem2/>
<elements>
<root>
</xml>
Is there a simple way to do this?
Strip all newline characters with String xml = IOUtils.toString(xmlIn).replace("\n", "")
. Or \t
to keep several lines but without indentation.
这篇关于如何unformat xml文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!