Advertisement
Talar97

[Zad 2] Random Access File i inne

Jan 29th, 2018
396
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.84 KB | None | 0 0
  1. public static void Zad3(){
  2.         String line;
  3.         try{
  4.             RandomAccessFile raf = new RandomAccessFile("C:\\Users\\TalarPC\\IdeaProjects\\Powturka\\baza.txt", "rw");
  5.             raf.seek(0);
  6.             System.out.println(raf.getFilePointer() + ", " + raf.length());
  7.             while(raf.getFilePointer() < raf.length()){
  8.                 long fp = raf.getFilePointer();
  9.                 line = raf.readLine();
  10.                 long fp2 = raf.getFilePointer();
  11.                 System.out.println(raf.getFilePointer() + " - " + line);
  12.                 if(line.equals("cos")){
  13.                     raf.seek(fp);
  14.                     raf.writeUTF("XDXDXD");
  15.                     raf.seek(fp2);
  16.                 }
  17.             }
  18.  
  19.             //odczyt
  20.             raf.seek(0);
  21.             System.out.println(raf.getFilePointer() + ", " + raf.length());
  22.             while(raf.getFilePointer() < raf.length()){
  23.                 System.out.println(raf.readLine());
  24.             }
  25.             raf.close();
  26.  
  27.             raf.close();
  28.         }catch(Exception x) { System.out.print("Błont " + x); }
  29.     }
  30.  
  31.     public static String Zad2(){
  32.         String imie;
  33.         String nazwisko;
  34.         int wiek;
  35.         Double pensja;
  36.         String plec;
  37.         String result = "";
  38.  
  39.         int min = Integer.MAX_VALUE;
  40.  
  41.         try{
  42.             RandomAccessFile raf = new RandomAccessFile("C:\\Users\\TalarPC\\IdeaProjects\\Powturka\\baza.bin", "rw");
  43.             //zapis
  44.             raf.writeUTF("Adrian"); raf.writeUTF("Malina"); raf.writeDouble(2137); raf.writeInt(55); raf.writeUTF("Nieznana");
  45.             raf.writeUTF("Martyna"); raf.writeUTF("Buc"); raf.writeDouble(200); raf.writeInt(13); raf.writeUTF("Kobieta");
  46.             raf.writeUTF("Grażyna"); raf.writeUTF("Buc"); raf.writeDouble(3500); raf.writeInt(65); raf.writeUTF("Kobieta");
  47.  
  48.             raf.seek(0);
  49.             System.out.println(raf.getFilePointer() + ", " + raf.length());
  50.             while(raf.getFilePointer() < raf.length()){
  51.                 imie = raf.readUTF();
  52.                 nazwisko = raf.readUTF();
  53.                 long pt = raf.getFilePointer();
  54.                 pensja = raf.readDouble();
  55.                 wiek = raf.readInt();
  56.                 plec = raf.readUTF();
  57.                 long pt2 = raf.getFilePointer();
  58.  
  59.                 if(wiek>50 && !plec.equals("Kobieta")){
  60.                     pensja *= 1.10;
  61.                     raf.seek(pt);
  62.                     raf.writeDouble(pensja);
  63.                 }
  64.  
  65.                 if(plec.equals("Kobieta")){
  66.                     if(wiek<min){
  67.                         min = wiek;
  68.                         result = (imie + " " + nazwisko);
  69.                     }
  70.                 }
  71.                 raf.seek(pt2);
  72.             }
  73.  
  74.             //odczyt
  75.             raf.seek(0);
  76.             System.out.println(raf.getFilePointer() + ", " + raf.length());
  77.             while(raf.getFilePointer() < raf.length()){
  78.                 System.out.print(raf.readUTF() + ", ");
  79.                 System.out.print(raf.readUTF() + ", ");
  80.                 System.out.print(raf.readDouble() + ", ");
  81.                 System.out.print(raf.readInt() + ", ");
  82.                 System.out.print(raf.readUTF() + ", \n");
  83.             }
  84.             raf.close();
  85.         }catch(Exception x) { System.out.print("Błont " + x); }
  86.  
  87.         return result;
  88.     }
  89.  
  90.     public static void zad1(){
  91.         String x = "123";
  92.         System.out.println("Parsowanie: " + Integer.parseInt(x));
  93.         System.out.println("CharAt: " + x.charAt(0));
  94.         System.out.println("ASCII: " + Character.getNumericValue(x.charAt(1)));
  95.     }
  96.  
  97.     public static void plik() throws  FileNotFoundException{
  98.         File plik = new File("C:\\Users\\TalarPC\\IdeaProjects\\Powturka\\baza.txt");
  99.         Scanner in = new Scanner(plik);
  100.  
  101.         String linia;
  102.         String [] pos;
  103.         String [] imiona = new String[liczLinijki()];
  104.         int i = 0;
  105.  
  106.         while(true){
  107.             try{
  108.                 linia = in.nextLine();
  109.                 pos = linia.split("\\+");
  110.                 System.out.println(pos[0] + ", " + pos[1] + ", " + pos[2]);
  111.                 imiona[i] = pos[0];
  112.                 i++;
  113.             }catch(NoSuchElementException e) { break; }
  114.         }
  115.  
  116.         System.out.println("Tablica imion:");
  117.         for(int j = 0; j < imiona.length; j++){
  118.             System.out.println("Imie: " +imiona[j]);
  119.         }
  120.     }
  121.  
  122.     public static int liczLinijki() throws FileNotFoundException{
  123.         File plik = new File("C:\\Users\\TalarPC\\IdeaProjects\\Powturka\\baza.txt");
  124.         Scanner in = new Scanner(plik);
  125.  
  126.         String linia;
  127.         int result = 0;
  128.  
  129.         while(true){
  130.             try{
  131.                 linia = in.nextLine();
  132.                 result++;
  133.             }catch(NoSuchElementException e) { break; }
  134.         }
  135.         return result;
  136.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement