2017-02-11 177 views
-2

我希望有人能幫助我。從文本文件中讀取並保存並將其打印到文本中

我想創建一個程序來讀取輸入文件中的變量以輸出文件 輸入文件如下員工的名字,兩個雙精度值,賣家的薪水和他/她出售的總價值。

JOAO 
450.00 
1230.30 

FDJSI 
333.00 
2.00 

MAJDIIDFH 
433.00 
222.50 

所要求賣方的工資總額是輸出

這是我一直在努力使

import java.io.BufferedReader; 
import java.io.FileReader; 
import java.io.IOException; 
/** 
* A simple example program that reads a text file line by line and display each line. 
*/ 
public class Salary { 
public static void main(String[] args) { 

    BufferedReader br = null; 


    try { 
     br = new BufferedReader(new FileReader("temp.txt")); 
     String sellerName; 


     while ((sellerName = br.readLine()) != null) { 
      String salary = br.readLine(); 
      String totalSale =br.readLine(); 
      double percentage = 0.15; 

      double SaleAfterPercentage = totalSale * percentage; 
      //value of the total salary 
      double finalSalary = salary + SaleAfterPercentage ; 


     System.out.println(sellerName); 
     // System.out.println(salary); 
    // System.out.println(totalSale); 
     } 


    } catch (IOException e) { 
     e.printStackTrace(); 

    } finally { 
     try { 
      if (br != null) { 
       br.close(); 
      } 
     } catch (IOException ex) { 
      ex.printStackTrace(); 
      } 
     } 
    } 
} 
+1

你只有一個Reader對象...如何在寫一個文件之前做一些研究,然後再請求Stackoverflow,請 –

回答

0

嘗試這個

BufferedReader br = null; 
try { 
    br = new BufferedReader(new FileReader("temp.txt")); 
    String line = null; 


    while ((line = br.readLine()) != null) { 
     StringTokenizer st = new StringTokenizer(line); 

     String sellerName = st.nextToken(); 
     String salary = st.nextToken(); 
     String totalSale =st.nextToken(); 
     double percentage = 0.15; 

     double SaleAfterPercentage = (Double.parseDouble(totalSale)) * percentage; 
     //value of the total salary 
     double finalSalary = Double.parseDouble(salary) + SaleAfterPercentage ; 


    System.out.println(sellerName); 

    System.out.println(finalSalary); 
    System.out.println(totalSale); 
    } 


} catch (Exception e) { 
    e.printStackTrace(); 

} finally { 
    try { 
     if (br != null) { 
      br.close(); 
     } 
    } catch (Exception ex) { 
     ex.printStackTrace(); 
     } 
    } 

要閱讀這篇

代碼
JOAO 450.00 1230.30 
FDJSI 333.00 2.00 
MAJDIIDFH 433.00 222.50 
相關問題