我需要读取一组 xml 和属性文件并解析数据。目前我正在使用输入流 ans 字符串生成器来执行此操作。但这不会以与输入文件相同的方式创建文件。我不想删除空格和新行。我如何实现这一目标。
is = test.getInputStream();
br = new BufferedReader(new InputStreamReader(is));
String line5;
StringBuilder sb5 = new StringBuilder();
while ((line5 = br.readLine()) != null) {
sb5.append(line5);
}
String s = sb5.toString();
我的输出是:
#test 123 #test2 345
预期输出为:
#test
123
#test2
345
有什么想法吗?谢谢
最佳答案
br.readLine() 消耗换行符,您需要在附加行后将它们添加到您的 StringBuilder。
is = test.getInputStream();
br = new BufferedReader(new InputStreamReader(is));
String line5;
StringBuilder sb5 = new StringBuilder();
while ((line5 = br.readLine()) != null) {
sb5.append(line5);
sb5.append("\n");
}
如果您想要一个极其简单的解决方案来将文件读取为字符串,Apache Commons-IO有执行此类任务的方法 ( org.apache.commons.io.FileUtils )。
FileUtils.readFileToString(File file, String encoding);
关于java使用stringbuilder读取属性和xml文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11618245/