Strumenti Utente

Strumenti Sito


lpr-b:cat
no way to compare when less than two revisions

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.


lpr-b:cat [28/09/2007 alle 08:16 (18 anni fa)] (versione attuale) – creata Marco Danelutto
Linea 1: Linea 1:
 +<code java>
 +package TestIngresso;
  
 +import java.io.FileInputStream;
 +import java.io.FileNotFoundException;
 +import java.io.IOException;
 +import java.io.InputStream;
 +
 +public class CatN {
 +
 + /**
 + * metodo dell'oggetto CatN<br>Il metodo non e' dichiarato statico, dal momento che utilizziamo nel main un oggetto CatN per 
 + * richiamarlo. Usare un metodo statico solo perche' si chiama nel main non e' corretto, in generale, anche se puo' non provocare 
 + * errori in fase di esecuzione. 
 +
 + * @param is rappresenta l'InputStream che si vuole copiare sullo standard output
 + */
 + public void copy(InputStream is) {
 + final int MAXBUFFER = 1024;
 + byte [] buffer = new byte[MAXBUFFER];
 + int letti = 0; 
 +
 + try {
 + while( (letti = is.read(buffer,0,MAXBUFFER))!= (-1)) {
 + System.out.write(buffer,0,letti);
 + }
 + } catch (IOException e) {
 + e.printStackTrace();
 + }
 + return;
 + }
 +
 + /**
 + * Main del programma: controlla se ci sono argomenti. Se non ve ne sono, si configura come un filtro (legge lo standard input e
 + * scrive lo standard output) altrimenti copia tutti i file di cui viene passato il nome dalla riga di comando
 + *
 + * @param args ciascun parametro rappresenta un nome di file da copiare sullo standard output
 + */
 + public static void main(String[] args) {
 + // creazione dell'oggetto copiatore
 + CatN copier = new CatN();
 +
 + if(args.length == 0) {  // se non ci sono parametri, funziona da filtro
 + copier.copy(System.in);
 + } else { // altrimenti processa tutti i file passati come argomento
 + for(int i=0; i<args.length; i++) {
 + InputStream is = null;
 + try {
 + is = new FileInputStream(args[i]);  // apri il file
 + copier.copy(is);                    // quindi copialo 
 + } catch (FileNotFoundException e) {     // se non esiste, segnala l'errore e continua con il prossimo file
 + System.out.println("File "+args[i]+" non trovato");
 + }
 + }
 + }
 + }
 +
 +}
 +</code>
lpr-b/cat.txt · Ultima modifica: 28/09/2007 alle 08:16 (18 anni fa) da Marco Danelutto

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki