Rahmadnet

Java - Files and I/O

Jul 10th, 2019
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.86 KB | None | 0 0
  1. package javaIO;
  2.  
  3. import java.text.DecimalFormat;
  4. import java.text.NumberFormat;
  5. import java.util.List;
  6. import java.util.Locale;
  7.  
  8. public class DemoHitungBatasSks
  9. {
  10.  
  11.     public static void main(String[] xx)
  12.     {
  13.         BatasDao bd = new BatasDao();
  14.         List<Batas> hasil = bd.bacaFile();
  15.        
  16.         Locale indonesia = new Locale("ID", "id");
  17.         NumberFormat formatter = NumberFormat.getInstance(indonesia);
  18.         ((DecimalFormat)formatter).applyPattern("0.00");
  19.        
  20.         System.out.println("+=========+=========+=====+");
  21.         System.out.println("| IPK Min | IPK Max | SKS |");
  22.         System.out.println("+=========+=========+=====+");
  23.        
  24.         for(Batas b : hasil)
  25.         {
  26.             System.out.print("|  ");
  27.             System.out.print(formatter.format(b.getIpkMin()));
  28.             System.out.print("  |  ");
  29.             System.out.print(formatter.format(b.getIpkMax()));
  30.             System.out.print("  |  ");
  31.             System.out.print(b.getSks());
  32.             System.out.println("   |");
  33.         }
  34.         System.out.println("+=========+=========+=====+");
  35.     }
  36.  
  37. }
  38.  
  39.  
  40. import java.math.BigDecimal;
  41.  
  42. public class Batas
  43. {
  44.     private BigDecimal ipkMin;
  45.     private BigDecimal ipkMax;
  46.     private Integer sks;
  47.    
  48.     public BigDecimal getIpkMin()
  49.     {
  50.         return ipkMin;
  51.     }
  52.    
  53.     public void setIpkMin(BigDecimal ipk)
  54.     {
  55.         this.ipkMin = ipk;
  56.     }
  57.    
  58.     public BigDecimal getIpkMax()
  59.     {
  60.         return ipkMax;
  61.     }
  62.    
  63.     public void setIpkMax(BigDecimal ipk)
  64.     {
  65.         this.ipkMax = ipk;
  66.     }
  67.    
  68.     public Integer getSks()
  69.     {
  70.         return sks;
  71.     }
  72.    
  73.     public void setSks(Integer sks)
  74.     {
  75.         this.sks = sks;
  76.     }
  77. }
  78.  
  79. import java.io.BufferedReader;
  80. import java.io.File;
  81. import java.io.FileReader;
  82. import java.math.BigDecimal;
  83. import java.util.ArrayList;
  84. import java.util.List;
  85.  
  86. public class BatasDao
  87. {
  88.     public List<Batas> bacaFile()
  89.     {
  90.         try
  91.         {
  92.             // 0. Object penampungan hasil
  93.             List<Batas> hasil = new ArrayList<Batas>();
  94.            
  95.             // 1. Deklarasikan object file
  96.             File f = new File("input" + File.separator + "batas.txt");
  97.            
  98.             /// 2. Buat reader
  99.             FileReader fr = new FileReader(f);
  100.             BufferedReader br = new BufferedReader(fr);
  101.            
  102.             // 3. Looping, selama ada data baca dan tampilkan
  103.             String data = br.readLine();
  104.             data = br.readLine();
  105.             while(data != null)
  106.             {
  107.                 // 3.a. Parsing data
  108.                 String[] kolom = data.split(",");
  109.                 BigDecimal ipkMin = new BigDecimal(kolom[0]);
  110.                 BigDecimal ipkMax = new BigDecimal(kolom[1]);
  111.                 Integer sks = Integer.parseInt(kolom[2]);
  112.                
  113.                 // 3.b Masukkan ke object
  114.                 Batas b = new Batas();
  115.                 b.setIpkMin(ipkMin);
  116.                 b.setIpkMax(ipkMax);
  117.                 b.setSks(sks);
  118.                
  119.                 // 3.c. Kumpulan object di hasil akhir
  120.                 hasil.add(b);
  121.                
  122.                 data = br.readLine();
  123.             }
  124.            
  125.             // 4. Setelah selesai diproses, tutup file
  126.             br.close();
  127.            
  128.             // 5. Return hasil
  129.             return hasil;
  130.         } catch (Exception err) {
  131.             System.out.println("Terjadi error : " + err.getMessage());
  132.             return new ArrayList<Batas>();
  133.         }
  134.     }
  135. }
Advertisement
Add Comment
Please, Sign In to add comment