Prethodna | Nadređena | Naredna

Čitanje datoteka sa interneta u jeziku Java

// Citac.java - Citanje datoteka sa Interneta.
import java.io.*;
import java.net.*;
class Citac {

  static public void main (String[] argi) {
    if (argi.length == 0) {
      System.out.println ("Pozivanje: java Citac URL [-iDAT]");
      return;
    }
    String ulaz="", izlaz="";
    for (int i=0; i<argi.length; i++) {
      if (argi[i].startsWith ("-")) {
        switch (argi[i].charAt (1)) {
          case 'i': izlaz = argi[i].substring (2, argi[i].length()); break;
          default: System.out.println ("*** Nepoznata opcija: " + argi[i]);
                   return;
        }
      } else ulaz = argi[i];
    }
    if (ulaz == "") { System.out.println ("*** Nedostaje URL"); return; }
    try {
      URL url = new URL (ulaz);
      if (izlaz == "") izlaz = url.getFile ();
      int j = izlaz.lastIndexOf ("/");
      if (j != -1) izlaz = izlaz.substring (j+1, izlaz.length ());
      try {
        DataInputStream  ul = new DataInputStream  (url.openStream());
        FileOutputStream iz = new FileOutputStream (izlaz);
        int bajt, k=0;
        boolean broji = ! izlaz.equalsIgnoreCase ("con");
        try {
          while ((bajt = ul.read ()) != -1) {
            iz.write (bajt); k++;
            if (broji && k%100 == 0)
              System.out.print ("Preneto je " + k + " bajt(ov)a\r");
          }
          System.out.println ("Preneto je " + k + " bajt(ov)a");
          iz.flush (); iz.close (); ul.close ();
        } catch (IOException g) {
          System.out.println ("*** U/I greska"); return;
        }
      } catch (IOException g) {
        System.out.println ("*** Neuspesno otvaranje URL-a"); return;
      }
    } catch (MalformedURLException g) {
      System.out.println ("*** Neispravan URL"); return;
    }
  }
}

Autor: Laslo Kraus
E-pošta: kraus@etf.rs

Copyright © 1998, Laslo Kraus
Poslednja revizija: 13.6.1998.