Pomocy w wytłumaczeniu kodu

0

Mam wielko prosbę jakby ktoś mógł to proszę o szybkie wytłumaczenie o co chodzi w tym kodzie.

import java.io.;
import java.util.
;

public class Phonebook {
public static void main(String arg[])throws IOException{

Properties ht=new Properties();

String name, phone;

if (arg.length==1){
FileInputStream fin= null;
try{
fin= new FileInputStream("phonebook.dat");

}catch (FileNotFoundException e){
}
try{
if (fin!=null){
ht.load(fin);
fin.close();
}
}catch (IOException e) {
System.out.println("Blad odczytu");
}

name= arg[0];
System.out.println(ht.get(name));

}

if (arg.length==2) {
FileInputStream fin= null;
try{
fin= new FileInputStream("phonebook.dat");
}catch (FileNotFoundException e){
}
try{
if (fin!=null){
ht.load(fin);
fin.close();
}
}catch (IOException e) {
System.out.println("Blad odczytu");
}

name =arg[0];
phone =arg[1];
ht.put(name,phone);

System.out.println(name);

System.out.println(phone);

FileOutputStream fout = new FileOutputStream("Phonebook.dat");
ht.store(fout,"Ksiazka telefoniczna");
fout.close();
//fin.close();
}
}
}

Jest to prosty program ksiazki telefonicznej. Mam go od kumpla, ale nie wiem co tu jest realizowane krok po kroku.</asm>

0

Klasa Phonebook jest głlowną klasą programu. Wskazuje na to posiadanie przez nią metody main(). Co robi?

Properties ht=new Properties();
if (arg.length==1){
        FileInputStream fin= null;
try{
 fin= new FileInputStream("phonebook.dat");
}catch (FileNotFoundException e){}

try{
   if (fin!=null){
      ht.load(fin);
      fin.close();
   }
}catch (IOException e) {
   System.out.println("Blad odczytu");
}


Jeżeli program został uruchomiony z dokładnie jednym argumentem to argument ten zostaje potraktowany jako Imię. Następnie plik phonebook zostaje załadowany do obiektu FileInputStream - fin. Jeżeli nie jest to plik to zostaje wyłapany wyjątek, ale nic sie z nim nie dzieje. Następnie jezeli fin nie jest pusty - if(fin!=null) zostaje podjęta próba stworzenia z fin obiektu klasy Properties. Klasa ta jest zazwyczaj wykorzystywana do składowania ustawień. Pliki takie zbudowane są wg. wzoru:
klucz=wartość
nastęnie fin jest zamykany fin.close() a napodstawie pierwszego argumentu zostaje przeprowadzone wyszukiwanie w pliku.

Jeżeli program jest uruchomiony dokładnie z dwoma parametrami to zostają powtórzone te operacje ale zamiast odszukania następuje zapis do pliku.

jeżeli nie uda się ta operacja wyrzucany jest wyjątek IOException i wyświetlany komunikat

1 użytkowników online, w tym zalogowanych: 0, gości: 1