Package de.willuhn.io

Class LineOutputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.io.Flushable, java.lang.AutoCloseable
    Direct Known Subclasses:
    LoggerOutputStream

    public abstract class LineOutputStream
    extends java.io.OutputStream
    Ein OutputStream, der alle Daten, die erhaelt buffert und zeilenweise an writeLine(java.lang.String) uebergibt. Sprich: Will man Daten zeilenweise verarbeiten, darf aber nur einen OutputStream angeben, dann kann man von dieser Klasse ableiten, die Funktion writeLine implementieren und kann bequem zeilenweise lesen. Hinweis: Ist die Zeile laenger als der angegebene Buffer, wird bei Erreichen der Buffer-Groesse auch schon vor dem Zeilenende geschrieben.
    • Constructor Summary

      Constructors 
      Constructor Description
      LineOutputStream()
      Erzeugt einen LineOutputStream mit 1024 Byte Buffer.
      LineOutputStream​(int bufferSize)
      Erzeugt einen LineOutputStream mit der angebenen Buffer-Groesse.
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      void write​(int b)  
      abstract void writeLine​(java.lang.String s)
      Wird aufgerufen, wenn eine Zeile vollstaendig ist und geschrieben werden kann oder aber der Buffer voll ist.
      • Methods inherited from class java.io.OutputStream

        close, flush, nullOutputStream, write, write
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • LineOutputStream

        public LineOutputStream()
        Erzeugt einen LineOutputStream mit 1024 Byte Buffer.
      • LineOutputStream

        public LineOutputStream​(int bufferSize)
        Erzeugt einen LineOutputStream mit der angebenen Buffer-Groesse.
        Parameters:
        bufferSize - Buffer-Groesse in Bytes.
    • Method Detail

      • write

        public final void write​(int b)
                         throws java.io.IOException
        Specified by:
        write in class java.io.OutputStream
        Throws:
        java.io.IOException
        See Also:
        OutputStream.write(int)
      • writeLine

        public abstract void writeLine​(java.lang.String s)
                                throws java.io.IOException
        Wird aufgerufen, wenn eine Zeile vollstaendig ist und geschrieben werden kann oder aber der Buffer voll ist. Wichtig: In der Zeile ggf. vorhandene Linewraps werden entfernt. Sollen Die Ausgaben also z.Bsp. via System.out geschrieben werden, dann bitte "println()" statt "print()" verwenden, um den entfernten Zeilenumbruch wieder anzufuegen.
        Parameters:
        s - der zu schreibende String bereinigt um seinen Zeilenumbruch.
        Throws:
        java.io.IOException