logo

Java.io.LineNumberInputStream-Klasse in Java

Die Klasse java.io.LineNumberInputStream ist einfach eine Erweiterung des Eingabestreams und bietet eine zusätzliche Möglichkeit, die aktuelle Zeilennummer aufzuzeichnen. 

Linie ist eine Folge von Bytes, die mit „r“ endet, d. h. einem Wagenrücklaufzeichen oder einem Zeilenumbruchzeichen: „n“ oder einem Zeilenvorschubzeichen, das dem Wagenrücklaufzeichen folgt.

Erklärung :   



public class LineNumberInputStream extends Reader

Konstrukteure:   

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

Methoden:   

LineNumberInputStream-Klasse' title=

Word-Symbolleiste für den Schnellzugriff
    read() : java.io.LineNumberInputStream.read()Liest das nächste Datenbyte aus dem Eingabestream. Es gibt einen int-Wert zurück, der die Bytes im Bereich von „0 – 255“ darstellt. Es gibt „-1“ zurück, um das Ende des Eingabestreams anzuzeigen. 
    Syntax: 
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

Umsetzung:  

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();  }  } } 

Notiz : 
Der folgende Java-Code wird hier nicht ausgeführt, da wir auf keine Datei in der Online-IDE zugreifen können. 
Kopieren Sie also das Programm auf Ihr System und führen Sie es dort aus.

Der ABC.txt Die im Programm verwendete Datei enthält: 

Hello Geeks. Explaining read() method

Ausgabe :  

Hello Geeks. Explaining read() method
    getLineNumber() : java.io.LineNumberInputStream.getLineNumber()Gibt die Nummer der aktuellen Zeile zurück. 
    Syntax: 
 public int getLineNumber()   Parameters :    -------   Return :    no. of current line

Umsetzung:  

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();  }  } } 

Notiz : 
Der folgende Java-Code wird hier nicht ausgeführt, da wir auf keine Datei in der Online-IDE zugreifen können. 
Kopieren Sie also das Programm auf Ihr System und führen Sie es dort aus.

Der ABC.txt Die im Programm verwendete Datei enthält: 

no. of lines

Ausgabe :  

.nächstes Java
 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
    available() : java.io.LineNumberInputStream.available()gibt die Anzahl der Bytes zurück, die ohne Blockierung aus dem Eingabestream gelesen werden können. 
    Syntax: 
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

Umsetzung:  

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();  }  } } 

Notiz : 
Der folgende Java-Code wird hier nicht ausgeführt, da wir auf keine Datei in der Online-IDE zugreifen können. 
Kopieren Sie also das Programm auf Ihr System und führen Sie es dort aus.

Der ABC.txt Die im Programm verwendete Datei enthält: 

Java-String in Booleschen Wert umwandeln
available

Ausgabe :  

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)weist dem gewünschten Argument eine Zeilennummer zu. 
    Syntax: 
public void setLineNumber(int arg)   Parameters :    arg : line number to assign   Return :    void   Exception:    -----

Umsetzung:  

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();  }  } } 

Notiz : 
Der folgende Java-Code wird hier nicht ausgeführt, da wir auf keine Datei in der Online-IDE zugreifen können. 
Kopieren Sie also das Programm auf Ihr System und führen Sie es dort aus.

Der ABC.txt Die im Programm verwendete Datei enthält: 

LineNumber

Ausgabe :  

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(long arg)überspringt und verwirft „arg“-Bytes aus den Eingabestream-Daten. Die Skip-Methode von LineNumberInputStream erstellt ein Byte-Array und liest es dann wiederholt ein, bis n Bytes gelesen wurden oder das Ende des Streams erreicht ist. 
    Syntax: 
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

Umsetzung:  

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();  }  } } 

Notiz : 
Der folgende Java-Code wird hier nicht ausgeführt, da wir auf keine Datei in der Online-IDE zugreifen können. 
Kopieren Sie also das Programm auf Ihr System und führen Sie es dort aus.

Der ABC.txt Die im Programm verwendete Datei enthält: 

Program Explaining Skip() method

Ausgabe :

P r E a n k ) t
    read() : java.io.LineNumberInputStream.read(byte[] buffer int offset int maxlen)Liest bis zu 'maxlen' Bytes aus dem Eingabestream in Bytes. 
    Syntax: 
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

Umsetzung:  

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();  }  } } 

Notiz : 
Der folgende Java-Code wird hier nicht ausgeführt, da wir auf keine Datei in der Online-IDE zugreifen können. 
Kopieren Sie also das Programm auf Ihr System und führen Sie es dort aus.

Der ABC.txt Die im Programm verwendete Datei enthält: 

Read() method

was die Methode macht, ist offset = r und maxlen = 5... also ---d.h. 3 Offset, dann 5 Bytes, d. h. Read(, dann wieder Offset, also -- 
Ausgabe :  

Java-Formatzeichenfolge
The number of char read: 5 ---Read(--
    mark() : Java.io.LineNumberInputStream.mark(int arg)markiert die aktuelle Position des Eingabestreams. Es legt das Leselimit fest, d. h. die maximale Anzahl von Bytes, die gelesen werden können, bevor die Markierungsposition ungültig wird. 
    Syntax:
public void mark(int arg)   Parameters :   arg : integer specifying the read limit of the input Stream   Return :   void
    reset() : Java.io.LineNumberInputStream.reset()wird durch die Methode mark() aufgerufen. Der Eingabestream wird an der markierten Position neu positioniert. 
    Syntax:
public void reset()   Parameters :   ----   Return :   void   Exception :   ->   IOException :   If I/O error occurs.

Java-Programm zur Erläuterung der Methoden der LineNumberInputStream-Klasse: reset() und 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();  }  } } 

Notiz :  
Dieser Code kann nicht auf der Online-IDE ausgeführt werden, da hier keine solche Datei vorhanden ist. 
Sie können diesen Code auf Ihrem System ausführen, um die Funktion zu überprüfen. 

ABC.txt Die im Code verwendete Datei hat 

HelloGeeks

Ausgabe : 

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

 
 

Quiz erstellen