在java I / O文件中以新行打印输出

时间:2015-07-31 11:12:48

标签: java file-io

我想在新行中打印输出怎么做? 以下是输出。

CHILD: Child line one oneCHILD: Child line one twoCHILD: Child line one three
CHILD: Child line two oneCHILD: Child line two twoCHILD: Child line two three

这是我的代码......

    try {
        fis = new FileInputStream(file);
        fileWriterChild = new FileWriter(outputFileForChild);
        brChild = new BufferedWriter(fileWriterChild);
        fr = new FileReader(file);
        br = new BufferedReader(fr);
        int child_line_no = 0;

        int buffer = 0;
        String currentLine = br.readLine();
        while (currentLine != null) {

            if (currentLine.contains("CHILD:")) {

                Files.write(Paths.get("C:/output.child.txt"),
                        currentLine.getBytes(), StandardOpenOption.APPEND);

            }
            currentLine = br.readLine();

        }
    } catch (FileNotFoundException e) {

        e.printStackTrace();
    }

    finally {

        fis.close();
    }

}

1 个答案:

答案 0 :(得分:0)

取决于你想做什么。以下是我的两种方式:

在文件末尾添加一行

void WriteLog(String date, String message) {
    String logFileName = <path to file>;
    File logFile = new File(logFileName);
    //make directories
    logFile.getParentFile().mkdirs();
    try (FileWriter writer = new FileWriter(logFile, true)) {
        writer.write(message);
        writer.write("\r\n");
    } catch (IOException ex) {
        Cls_log.LogError("Error writing log - " + ex.toString());
    }
}

将所有字符串写为行到文件(覆盖文件)

public static void WriteABcardLog(Map<String,String> etiquetteCache) {
    File logFile = new File(<path to file>);
    logFile.getParentFile().mkdirs();
    try (PrintWriter writer = new PrintWriter(logFile)) {
        Iterator<Map.Entry<String, String>> iterator = etiquetteCache.entrySet().iterator();
        while (iterator.hasNext()) {
            Map.Entry<String, String> entry = iterator.next();
            try {
                writer.print(entry.getKey() + ";" + entry.getValue() + "\r\n");
            } catch (NullPointerException e) {
                Cls_log.LogError(e);
            }
        }
        writer.println();
    } catch (IOException ex) {
        Cls_log.LogError("Error writing etiquette log - " + ex.toString());
    }
}