Java 如何在字符串readAllBytes中保留换行符

Java 如何在字符串readAllBytes中保留换行符,java,string,character-encoding,fileutils,Java,String,Character Encoding,Fileutils,乡亲们 我使用的是一个模板文件,它将被输入到一个字符串变量中,但是当我写入字符串的内容时,它会忽略文件中的换行符 如何保留原始文件中的换行符,以便输出文件也包含这些换行符 代码 模板文件(帮助无法复制的用户) //加载谷歌图表 load('current',{'packages':['corechart']}); google.charts.setOnLoadCallback(drawChart); //绘制图表并设置图表值 函数绘图图(){ var data=google.visualiza

乡亲们

我使用的是一个模板文件,它将被输入到一个字符串变量中,但是当我写入字符串的内容时,它会忽略文件中的换行符

如何保留原始文件中的换行符,以便输出文件也包含这些换行符

代码

模板文件(帮助无法复制的用户)


//加载谷歌图表
load('current',{'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);
//绘制图表并设置图表值
函数绘图图(){
var data=google.visualization.arrayToDataTable([
[“风险”、“风险计量表”],
[‘中等’,$mediumrisk],
['Critical',$criticalrisk],
[‘高’,$highrisk],
[‘低’,$lowrisk],
]);
//可选;添加标题并设置图表的宽度和高度
var选项={'title':'Risk Coverage','width':550','height':400};
//使用id=“piechart”在元素内显示图表
var chart=new google.visualization.PieChart(document.getElementById('PieChart');
图表绘制(数据、选项);
}
myAp报告
来自myApp的报告
此报告包含我的应用程序的扫描结果摘要

$body
有个问题:

StringBuilder result = new StringBuilder("");
String line;
while ((line = reader.readLine()) != null) { // <---
    result.append(line);
}
in.close();
问题是:

StringBuilder result = new StringBuilder("");
String line;
while ((line = reader.readLine()) != null) { // <---
    result.append(line);
}
in.close();
只需在每个读取行后添加newLineChar


只需在每个读取行后添加newLineChar…

FYI,您可以使用
replace($highrisk)
而不是
replaceAll(\\$highrisk)
。我看不到有证据表明原来有换行符或它们已被删除。请提供一个。@shmosel问题不是替换标记,这样做很好。也可以是任何有换行符的文件,但一旦输入字符串并写回文件,换行符就不会被保留。这就是为什么我用“FYI”。仍然无法用它复制,您确实需要提供FYI,您可以使用
replace($highrisk”
而不是
replaceAll(\\$highrisk“
。我看不到有证据表明原来有换行符或它们已被删除。请提供一个。@shmosel问题不是替换标记,这样做很好。也可以是任何有换行符的文件,但一旦将其输入字符串并写回文件,换行符就不会被保留。这就是为什么我在评论前面加上“仅供参考”。仍然无法用此复制,如果我想检查是否有新行,您真的需要提供一个如何检查If条件?如果我想检查是否有新行,如何检查If条件?
StringBuilder result = new StringBuilder("");
String line;
while ((line = reader.readLine()) != null) { // <---
    result.append(line);
}
in.close();
InputStream in = classLoader.getResourceAsStream("templates/reportTemplate.html");
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
String result = reader.lines().collect(Collectors.joining(System.lineSeparator()));
reader.close();
        StringBuilder result = new StringBuilder();
        String line;
        String newLineChar = System.getProperty("line.separator");
        while ((line = reader.readLine()) != null) {
            result.append(line);
            result.append(newLineChar);
        }