我有一个XML
文件,想将其内容作为字符串发送给调用者。这就是我正在使用的:
return FileUtils.readFileToString(xmlFile);
但这(或者我尝试过的所有其他方式,比如逐行阅读)转义了 XML 元素并用<string>
这样的方法封装了整个 XML
<string>>&lt;.....</string>
但我想回来
<a>....</a>
我建议使用不同的文件阅读器可能是这样的。
private String readFile( String file ) throws IOException {
BufferedReader reader = new BufferedReader( new FileReader (file));
String line = null;
StringBuilder stringBuilder = new StringBuilder();
String ls = System.getProperty("line.separator");
while( ( line = reader.readLine() ) != null ) {
stringBuilder.append( line );
stringBuilder.append( ls );
}
return stringBuilder.toString();
}
这可能是文件实用程序的一个功能。
根据您的问题,您只想阅读文件。您可以使用FileReader
和BufferedReader
来读取文件。
File f=new File("demo.xml");
FileReader fr=new FileReader(f);
BufferedReader br=new BufferedReader(fr);
String line;
while((line=br.readLine())!=null)
{
System.out.println(line);
}
希望这个答案对你有帮助
IOUtils 运行良好。它在包 org.apache.commons.io 中。toString 方法将 InputStream 作为参数,并将内容作为维护格式的字符串返回。
InputStream is = getClass.getResourceAsStream("foo.xml");
String str = IOUtils.toString(is);
BufferedReader br = new BufferedReader(new FileReader(new File(filename)));
String line;
StringBuilder sb = new StringBuilder();
while((line = br.readLine())!= null){
sb.append(line.trim());
}