比较File和PrintWriter

时间:2017-05-10 21:27:37

标签: java

我必须使用PrintWriter编写一个函数,逐行比较: 使用sredniaCalk在calkowite.txt中使用int,如果int更大 - >在cpowyzej.txt中打印它 使用sredniaRzecz在rzeczywiste.txt中加倍,如果double更大 - >在rpowyzej.txt中打印

为什么不起作用?

String buf;
 File rpowyzej = new File("c:/folder/rpowyzej.txt");
 File cpowyzej = new File("c:/folder/cpowyzej.txt");
 File rzeczywiste = new File("c:/folder/rzeczywiste.txt");
 File calkowite = new File("c:/folder/calkowite.txt");
 PrintWriter pw = new PrintWriter(rpowyzej);
 PrintWriter cpw = new PrintWriter(cpowyzej);
 Scanner sc = new Scanner(calkowite);
 Scanner sr = new Scanner(rzeczywiste);
 double sredniaRzecz = 0.28340862342710715;
 int sredniaCalk = 1;

 while (sc.hasNextLine()) {
     if (Integer.parseInt(sc.nextLine()) > sredniaCalk){
         cpw.println(Integer.parseInt(sc.nextLine()));
     }

 }

 while (sr.hasNextLine()) {
         if (Double.parseDouble(sr.nextLine()) > sredniaRzecz) 
             pw.println(Double.parseDouble(sr.nextLine()));

     }

 pw.close();
 sc.close();
 sr.close();

1 个答案:

答案 0 :(得分:1)

每次通过循环只读取一行:

while (sc.hasNextLine()) {
    Integer i = Integer.parseInt(sc.nextLine());
    if (i > sredniaCalk){
         cpw.println(i);
    }
}