logo

Classe Java.io.LineNumberInputStream in Java

La classe java.io.LineNumberInputStream è semplicemente un'estensione del flusso di input che fornisce una funzionalità aggiuntiva per conservare il record del numero di riga corrente. 

impilare in ds

Linea è una sequenza di byte che termina con: 'r', ovvero un carattere di ritorno a capo o un carattere di nuova riga: 'n' o un carattere di avanzamento riga che segue il carattere di ritorno a capo.

Dichiarazione:   



public class LineNumberInputStream extends Reader

Costruttori:   

  LineNumberInputStream(InputStream in) :    Constructs a newline no. stream that reads it's input from the specified Input Stream.

Metodi:   

Classe LineNumberInputStream' title=

    read(): java.io.LineNumberInputStream.read()legge il byte di dati successivo dal flusso di input. Restituisce un valore int che rappresenta i byte nell'intervallo '0 - 255'. Restituisce '-1' per indicare la fine del flusso di input. 
    Sintassi: 
public int read()   Parameters :    -------   Return :    int value representing the bytes in the range of '0 - 255'. return -1 indicating end of Input Stream.   Exception:    IOException : in case I/O error occurs

Attuazione:  

Java
// Java program illustrating the working of read() method import java.io.*; public class NewClass {  public static void main(String[] args) throws IOException  {  // LineNumberInputStream & FileInputStream initially null  LineNumberInputStream geekline = null;  FileInputStream geekinput = null;  try{  char c;  int a;  // New InputStream : 'ABC' is created  geekinput = new FileInputStream('ABC.txt');  geekline = new LineNumberInputStream(geekinput);  // read() method returning Bytes of Input Stream as integer  // '-1' indicating to read till end Of Input Stream  while((a = geekline.read()) != -1)  {  // Since read() method returns Integer value  // So we convert each integer value to char  c = (char)a;  System.out.print(c);  }  }  catch(Exception e)  {  // In case of error  e.printStackTrace();  System.out.println('ERROR Occurs ');  }  finally  {  // Closing the streams Once the End of Input Stream is reached  if(geekinput != null)  geekinput.close();  if(geekline != null)  geekline.close();  }  } } 

Nota: 
Il seguente codice Java non verrà eseguito qui poiché non possiamo accedere a nessun file sull'IDE online. 
Quindi copia il programma sul tuo sistema ed eseguilo lì.

IL ABC.txt il file utilizzato nel programma contiene: 

Hello Geeks. Explaining read() method

Produzione :  

Hello Geeks. Explaining read() method
    getLineNumber() : java.io.LineNumberInputStream.getLineNumber()restituisce il numero della riga corrente. 
    Sintassi: 
 public int getLineNumber()   Parameters :    -------   Return :    no. of current line

Attuazione:  

Java
// Java program illustrating the working of getLineNumber() method import java.io.*; public class NewClass {  public static void main(String[] args) throws IOException  {  // LineNumberInputStream & FileInputStream initially null  LineNumberInputStream geekline = null;  FileInputStream geekinput = null;  try  {  char c;  int a b;  // New InputStream : 'ABC' is created  geekinput = new FileInputStream('ABC.txt');  geekline = new LineNumberInputStream(geekinput);  while((a = geekline.read()) != -1)  {  // So we convert each integer value to char  c = (char)a;    // Use of getLineNumber() : to print line no.  a = geekline.getLineNumber();  System.out.println(' At line : ' + a);  System.out.print(c);  }  a = geekline.getLineNumber();  System.out.println(' at line: ' + a);  }  catch(Exception e)  {  // In case of error  e.printStackTrace();  System.out.println('ERROR Occurs ');  }  finally  {  // Closing the streams Once the End of Input Stream is reached  if(geekinput != null)  geekinput.close();   if(geekline != null)  geekline.close();  }  } } 

Nota: 
Il seguente codice Java non verrà eseguito qui poiché non possiamo accedere a nessun file sull'IDE online. 
Quindi copia il programma sul tuo sistema ed eseguilo lì.

IL ABC.txt il file utilizzato nel programma contiene: 

no. of lines

Produzione :  

 At line : 0 n At line : 0 o At line : 0 . At line : 0 At line : 0 o At line : 0 f At line : 1 At line : 1 l At line : 1 i At line : 1 n At line : 1 e At line : 1 s at line: 1
    disponibile(): java.io.LineNumberInputStream.available()restituisce il numero di byte che possono essere letti dall'Input Stream senza bloccarsi. 
    Sintassi: 
public int available()   Parameters :    -------   Return :    returns the no. of bytes that can be read from the Input Stream.   Exception:    IOException : in case I/O error occurs

Attuazione:  

linguaggio informatico groovy
Java
// Java program illustrating the working of available() method import java.io.*; public class NewClass {  public static void main(String[] args) throws IOException  {  // LineNumberInputStream & FileInputStream initially null  LineNumberInputStream geekline = null;  FileInputStream geekinput = null;  try{  char c;  int a b;  // New InputStream : 'ABC' is created  geekinput = new FileInputStream('ABC.txt');  geekline = new LineNumberInputStream(geekinput);  while((a = geekline.read()) != -1)  {  // So we convert each integer value to char  c = (char)a;  // Use of available method : return no. of bytes that can be read  a = geekline.available();  System.out.println(c + ' Bytes available : ' + a);  }  }  catch(Exception e)  {  // In case of error  e.printStackTrace();  System.out.println('ERROR Occurs ');  }  finally  {  // Closing the streams Once the End of Input Stream is reached  if(geekinput != null)  geekinput.close();  if(geekline != null)  geekline.close();  }  } } 

Nota: 
Il seguente codice Java non verrà eseguito qui poiché non possiamo accedere a nessun file sull'IDE online. 
Quindi copia il programma sul tuo sistema ed eseguilo lì.

IL ABC.txt il file utilizzato nel programma contiene: 

available

Produzione :  

a Bytes available : 4 v Bytes available : 3 a Bytes available : 3 i Bytes available : 2 l Bytes available : 2 a Bytes available : 1 b Bytes available : 1 l Bytes available : 0 e Bytes available : 0
    setLineNumber(): java.io.LineNumberInputStream.setLineNumber(int arg)assegna il numero di riga all'argomento che vogliamo. 
    Sintassi: 
public void setLineNumber(int arg)   Parameters :    arg : line number to assign   Return :    void   Exception:    -----

Attuazione:  

Java
// Java program illustrating the working of setLineNumber() method import java.io.*; public class NewClass {  public static void main(String[] args) throws IOException  {  // LineNumberInputStream & FileInputStream initially null  LineNumberInputStream geekline = null;  FileInputStream geekinput = null;  try{  char c;  int a b = 0;  // New InputStream : 'ABC' is created  geekinput = new FileInputStream('ABC.txt');  geekline = new LineNumberInputStream(geekinput);  while((a = geekline.read()) != -1)  {  // So we convert each integer value to char  c = (char)a;    // Use of setLineNumber() : to set the line no.  geekline.setLineNumber(100 + b);  // getLineNumber() : returning the current line no.  a = geekline.getLineNumber();  System.out.println(c + ' Line No. Set : ' + a);  b++;  }  }  catch(Exception e)  {  // In case of error  e.printStackTrace();  System.out.println('ERROR Occurs ');  }  finally  {  // Closing the streams Once the End of Input Stream is reached  if(geekinput != null)  geekinput.close();  if(geekline != null)  geekline.close();  }  } } 

Nota: 
Il seguente codice Java non verrà eseguito qui poiché non possiamo accedere a nessun file sull'IDE online. 
Quindi copia il programma sul tuo sistema ed eseguilo lì.

IL ABC.txt il file utilizzato nel programma contiene: 

LineNumber

Produzione :  

L Line No. Set : 100 i Line No. Set : 101 n Line No. Set : 102 e Line No. Set : 103 N Line No. Set : 104 u Line No. Set : 105 m Line No. Set : 106 b Line No. Set : 107 e Line No. Set : 108 r Line No. Set : 109
    skip(): java.io.LineNumberInputStream.skip(argomento lungo)salta e scarta i byte "arg" dai dati del flusso di input. Il metodo skip di LineNumberInputStream crea un array di byte e quindi lo legge ripetutamente finché non vengono letti n byte o viene raggiunta la fine del flusso. 
    Sintassi: 
public long skip(long arg)   Parameters :    arg : no. of bytes of Input Stream data to skip.   Return :    no. of bytes to be skipped   Exception:    IOException : in case I/O error occurs

Attuazione:  

Java
// Java program illustrating the working of setLineNumber() method import java.io.*; public class NewClass {  public static void main(String[] args) throws IOException  {  // LineNumberInputStream & FileInputStream initially null  LineNumberInputStream geekline = null;  FileInputStream geekinput = null;  try{  char c;  int a b = 0;  // New InputStream : 'ABC' is created  geekinput = new FileInputStream('ABC.txt');  geekline = new LineNumberInputStream(geekinput);  while((a = geekline.read()) != -1)  {  // So we convert each integer value to char  c = (char)a;  // skip() : to skip and discard 'arg' bytes  // Here skip() will skip and discard 3 bytes.  geekline.skip(3);  System.out.println(c);  }  }  catch(Exception e)  {  // In case of error  e.printStackTrace();  System.out.println('ERROR Occurs ');  }  finally{  // Closing the streams Once the End of Input Stream is reached  if(geekinput != null)  geekinput.close();  if(geekline != null)  geekline.close();  }  } } 

Nota: 
Il seguente codice Java non verrà eseguito qui poiché non possiamo accedere a nessun file sull'IDE online. 
Quindi copia il programma sul tuo sistema ed eseguilo lì.

IL ABC.txt il file utilizzato nel programma contiene: 

Java ha lanciato l'int in una stringa
Program Explaining Skip() method

Produzione :

P r E a n k ) t
    read(): java.io.LineNumberInputStream.read(byte[] buffer int offset int maxlen)legge fino a 'maxlen' byte dal flusso di input in byte. 
    Sintassi: 
public int read(byte[] buffer int offset int maxlen)   Parameters :    buffer : buffer whose data to read offset : starting offset of the data maxlen : max. no. of bytes to read   Return :    total no. of bytes else return -1 if End of Input Stream is identified   Exception:    IOException : in case I/O error occurs

Attuazione:  

Java
// Java program illustrating the working of read() method import java.io.*; public class NewClass {  public static void main(String[] args) throws IOException  {  // LineNumberInputStream & FileInputStream initially null  LineNumberInputStream geekline = null;  FileInputStream geekinput = null;  try{  char c;  int a;  // New InputStream : 'ABC' is created  geekinput = new FileInputStream('ABC.txt');  geekline = new LineNumberInputStream(geekinput);  // read() method returning Bytes of Input Stream as integer  // '-1' indicating to read till end Of Input Stream  while((a=geekline.read())!=-1)  {  // Since read() method returns Integer value  // So we convert each integer value to char  c = (char)a;  System.out.print(c);  }  }  catch(Exception e)  {  // In case of error  e.printStackTrace();  System.out.println('ERROR Occurs ');  }  finally  {  // Closing the streams Once the End of Input Stream is reached  if(geekinput != null)  geekinput.close();  if(geekline != null)  geekline.close();  }  } } 

Nota: 
Il seguente codice Java non verrà eseguito qui poiché non possiamo accedere a nessun file sull'IDE online. 
Quindi copia il programma sul tuo sistema ed eseguilo lì.

IL ABC.txt il file utilizzato nel programma contiene: 

Read() method

ciò che fa il metodo è offset = r e maxlen = 5... quindi --- cioè 3 offset quindi 5 byte, ovvero Read( quindi nuovamente offset quindi -- 
Produzione :  

The number of char read: 5 ---Read(--
    mark() : Java.io.LineNumberInputStream.mark(int arg)segna la posizione corrente del flusso di input. Imposta il readlimit, ovvero il numero massimo di byte che possono essere letti prima che la posizione del contrassegno diventi non valida. 
    Sintassi:
public void mark(int arg)   Parameters :   arg : integer specifying the read limit of the input Stream   Return :   void
    reset(): Java.io.LineNumberInputStream.reset()viene richiamato dal metodo mark(). Riposiziona il flusso di input nella posizione contrassegnata. 
    Sintassi:
public void reset()   Parameters :   ----   Return :   void   Exception :   ->   IOException :   If I/O error occurs.

Programma Java che spiega i metodi della classe LineNumberInputStream: reset() e mark() 

Java
// Java program illustrating the working of LineNumberInputStream method // mark() and reset() import java.io.*; public class NewClass {  public static void main(String[] args) throws Exception  {  LineNumberInputStream geekline = null;  FileInputStream geek = null;  try{  geek = new FileInputStream('GEEKS.txt');  geekline = new LineNumberInputStream(geek);  // read() method : reading and printing Characters one by one  System.out.println('Char : ' + (char)geekline.read());  System.out.println('Char : ' + (char)geekline.read());  System.out.println('Char : ' + (char)geekline.read());  // mark() : read limiting the 'geek' input stream  geekline.mark(0);  // skip() : it results in reading of 'e' in G'e'eeks  geekline.skip(1);  System.out.println('skip() method comes to play');  System.out.println('mark() method comes to play');  System.out.println('Char : ' + (char)geekline.read());  System.out.println('Char : ' + (char)geekline.read());  System.out.println('Char : ' + (char)geekline.read());  boolean check = geekline.markSupported();  if(geekline.markSupported())  {  // reset() method : repositioning the stream to marked positions.  geekline.reset();  System.out.println('reset() invoked');  System.out.println('Char : ' + (char)geekline.read());  System.out.println('Char : ' + (char)geekline.read());  }  else  {  System.out.println('reset() method not supported.');  }  System.out.println('geekline.markSupported() supported reset() : '   + check);  }  catch(Exception except)  {  // in case of I/O error  except.printStackTrace();  }  finally  {  // releasing the resources back to the GarbageCollector when closes  if(geek != null)  geek.close();  if(geekline != null)  geekline.close();  }  } } 

Nota:  
Questo codice non verrà eseguito sull'IDE online poiché qui non è presente alcun file di questo tipo. 
Puoi eseguire questo codice sul tuo sistema per verificarne il funzionamento. 

ABC.txt il file utilizzato nel codice ha 

HelloGeeks

Produzione : 

Char : H Char : e Char : l skip() method comes to play mark() method comes to play Char : o Char : G Char : e reset() method not supported. geekline.markSupported() supported reset() : false

 
 

Crea quiz