控制台输出到文本文件中

时间:2014-08-04 12:46:53

标签: java eclipse outputstream

将HTML文件转换为.txt文件的代码。代码供参考..

public static void main(String[] args) throws Exception {
    StringBuilder sb = new StringBuilder();
    BufferedReader br = new BufferedReader(new FileReader("D:/ticket.htm"));
    String line;
    while ((line = br.readLine()) != null) {
        sb.append(line).append(System.getProperty("line.separator"));
    }
    String nohtml = sb.toString().replaceAll("\\<.*?>", "");
    String nospace = nohtml.replaceAll(
            "^\\s+|\\s+$|\\s*(\n)\\s*|(\\s)\\s*", "$1$2");
    String new1 = nospace.replace("\t", " ");
    System.out.println(new1);
    PrintWriter outs = new PrintWriter("D:/text123.txt");
    outs.write(new1);
    outs.println(new1);
    outs.close();
}

new1包含文本(HTML输出),我可以在eclipse控制台中逐行打印, 但是当我尝试将该文本复制到文本文件(text123.txt)时,文本将被复制到同一行。

我需要将相同的控制台输出复制到文本文件中,即逐行复制。

2 个答案:

答案 0 :(得分:0)

你同时打电话给&#34;写&#34;和&#34; println&#34; PrintWriter对象的方法。

println()调用将添加\ n,这是你提供的任何字符串之后的换行符。

答案 1 :(得分:0)

试试这个

String new1 = "Some text";
PrintWriter outs;
try {
    outs = new PrintWriter("D:/text123.txt");
    outs.write(new1 + System.getProperty("line.separator"));
    outs.write(new1 + System.getProperty("line.separator"));
    outs.write(new1 + System.getProperty("line.separator"));
    outs.close();
} catch (FileNotFoundException ex) {
    System.out.println(ex.getMessage());
}