Выводит всё верно.
package com.javarush.task.task18.task1822;
/*
Поиск данных внутри файла
*/
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
public class Solution {
public static void main(String[] args) throws IOException {
int id = Integer.parseInt(args[0]);
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String b = reader.readLine();
FileInputStream inputStream = new FileInputStream(b);
String s = "";
while(inputStream.available()>0){
char c = (char) inputStream.read();
s += c;
if(c==10){
if(s.startsWith(String.valueOf(id))){
System.out.println(s);
}
s = "";
}
}
System.out.println(s);
if(s.startsWith(String.valueOf(id))){
System.out.println(s);
}
inputStream.close();
}
}