将指定的行写入新文件

时间:2016-03-05 08:00:59

标签: java nmea

我有一条nmea消息。我想写出只有$GPGSV行的其他文件。这是我的代码,现在为每一行写入布尔值(true,false)。如何写出行的值?

public static void main(String[] args) throws IOException {
       File inputFile = new File("proba.txt");
       File tempFile = new File("kiir.txt");

       BufferedReader reader = new BufferedReader(new FileReader(inputFile));
       BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile));

    String currentLine;

    while((currentLine = reader.readLine()) != null) {
            // trim newline when comparing with lineToRemove
            String trimmedLine = currentLine.trim();

    writer.write(currentLine.startsWith("$GPGSV") + System.getProperty("line.separator"));
    }
    writer.close();
    reader.close();

1 个答案:

答案 0 :(得分:1)

startsWith()返回一个布尔值,因此您使用它的方式只会将truefalse打印到文件中。试试这个

if(trimmedLine.startsWith("$GPGSV"){
    writer.write(trimmedLine + System.getProperty("line.separator"));
}

修改:使用trimmedLine代替currentLine。我认为那是你想要使用的。