2016-12-09 6 views
0

PrintWriter out = new PrintWriter (новый файлWriter ("students.txt", true)); do { // получить информацию от пользователя для записи в файл System.out.print ("Enter ID студента:"); idNo = keyIn.nextLine(); System.out.print («Введите имя студента:»); name = keyIn.nextLine(); System.out.print («Введите студентские классы:»); оценок = keyIn.nextInt(); keyIn.nextLine(); // очистка буфераУ меня есть текстовый файл с идентификатором без имени и классов. Я хочу извлечь идентификатор no, а оценки затем вычисляют среднее значение и добавляют его в другой файл.

 out.println(idNo +" " +name +" " +grades);  //write line to output file 

    System.out.print("Do You Have Another Student To Process: "); 
    response = keyIn.next().charAt(0); 
    keyIn.nextLine(); //clear buffer 


    }while(response != 'n');  
    //close files 
    out.close(); 
    //in.close(); 

break;

случай 2: // Записываем Student Test Marks Для results.txt

ответ

0
try (BufferedReader br = new BufferedReader(new FileReader(file))) { 
    String line; 
    HashMap<Integer, Integer> hmap = new HashMap<Integer, Integer >(); 
    while ((line = br.readLine()) != null) { 
     String temp[]=line.split(" "); 
     if (map.containsKey(Integer.parseInt(temp[0]))) { 
      int val=hmap.get[Integer.parseInt(temp[0])]; 
      val+=Integer.parseInt(temp[2]); 
      map.put(Integer.parseInt(temp[0]),val); 
     } else { 
      map.put(Integer.parseInt(temp[0]),Integer.parseInt(temp[2])); 
     } 
    } 
} 
try{ 
    PrintWriter writer = new PrintWriter("results.txt", "UTF-8"); 
    Iterator it = hmap.entrySet().iterator(); 
    while (it.hasNext()) { 
     Map.Entry pair = (Map.Entry)it.next(); 
     writer.println(pair.getKey() + " " + pair.getValue()); 
     it.remove(); // avoids a ConcurrentModificationException 
    } 
    writer.close(); 
} catch (IOException e) { 
    // do something 
} 
+0

OMG тот сумасшедший код, спасибо за ответ, но я нету понятия, что все это означает, что мой Java является основным и я даже не знаю, где начать с этого – wendy

+0

В первой половине кода я использую Hashmap (т. е. пару ) для хранения суммы оценок для одинаковых идентификаторов. Затем записывая одинаковые значения хэш-карты (ID, оценки) в другой файл во второй половине. Hashmap похож на словарь с уникальными ключами. – Koushik

+0

эй, что намного выше моих навыков. Я даже не слышал о hashmap. – wendy