<class name="QTextStream" doc="/**
&lt;p&gt;The &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; class provides a convenient interface for reading and writing text.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; can operate on a &lt;a href=&quot;QIODevice.html&quot;&gt;&lt;tt&gt;QIODevice&lt;/tt&gt;&lt;/a&gt;, a &lt;a href=&quot;QByteArray.html&quot;&gt;&lt;tt&gt;QByteArray&lt;/tt&gt;&lt;/a&gt; or a &lt;a href=&quot;%2E%2E/porting4.html#qstring&quot;&gt;&lt;tt&gt;QString&lt;/tt&gt;&lt;/a&gt;. Using &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt;'s streaming operators, you can conveniently read and write words, lines and numbers. For generating text, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; supports formatting options for field padding and alignment, and formatting of numbers. Example:&lt;/p&gt;
&lt;pre&gt;    QFile data(&amp;quot;output.txt&amp;quot;);
    if (data.open(QFile::WriteOnly | QFile::Truncate)) {
        QTextStream out(&amp;amp;data);
        out &amp;lt;&amp;lt; &amp;quot;Result: &amp;quot; &amp;lt;&amp;lt; qSetFieldWidth(10) &amp;lt;&amp;lt; left &amp;lt;&amp;lt; 3.14 &amp;lt;&amp;lt; 2.7 &amp;lt;&amp;lt; endl;
        &lt;span class=&quot;comment&quot;&gt;//&lt;/span&gt; writes &amp;quot;Result: 3.14      2.7       \n&amp;quot;
    }&lt;/pre&gt;
&lt;p&gt;It's also common to use &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; to read console input and write console output. &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; is locale aware, and will automatically decode standard input using the correct codec. Example:&lt;/p&gt;
&lt;pre&gt;    QTextStream stream(stdin);
    QString line;
    do {
        line = stream.readLine();
    } while (!line.isNull());&lt;/pre&gt;
&lt;p&gt;Note that you cannot use QTextStream::atEnd(), which returns true when you have reached the end of the data stream, with stdin.&lt;/p&gt;
&lt;p&gt;Besides using &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt;'s constructors, you can also set the device or string &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; operates on by calling &lt;a href=&quot;QTextStream.html#setDevice(com.trolltech.qt.core.QIODevice)&quot;&gt;&lt;tt&gt;setDevice&lt;/tt&gt;&lt;/a&gt; or setString(). You can seek to a position by calling &lt;a href=&quot;QTextStream.html#seek(long)&quot;&gt;&lt;tt&gt;seek&lt;/tt&gt;&lt;/a&gt;, and &lt;a href=&quot;QTextStream.html#atEnd()&quot;&gt;&lt;tt&gt;atEnd&lt;/tt&gt;&lt;/a&gt; will return true when there is no data left to be read. If you call &lt;a href=&quot;QTextStream.html#flush()&quot;&gt;&lt;tt&gt;flush&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; will empty all data from its write buffer into the device and call &lt;a href=&quot;QTextStream.html#flush()&quot;&gt;&lt;tt&gt;flush&lt;/tt&gt;&lt;/a&gt; on the device.&lt;/p&gt;
&lt;p&gt;Internally, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; uses a Unicode based buffer, and &lt;a href=&quot;QTextCodec.html&quot;&gt;&lt;tt&gt;QTextCodec&lt;/tt&gt;&lt;/a&gt; is used by &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; to automatically support different character sets. By default, QTextCodec::codecForLocale() is used for reading and writing, but you can also set the codec by calling &lt;a href=&quot;QTextStream.html#setCodec(com.trolltech.qt.core.QTextCodec)&quot;&gt;&lt;tt&gt;setCodec&lt;/tt&gt;&lt;/a&gt;. Automatic Unicode detection is also supported. When this feature is enabled (the default behavior), &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; will detect the UTF-16 BOM (Byte Order Mark) and switch to the appropriate UTF-16 codec when reading. &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; does not write a BOM by default, but you can enable this by calling &lt;a href=&quot;QTextStream.html#setGenerateByteOrderMark(boolean)&quot;&gt;&lt;tt&gt;setGenerateByteOrderMark&lt;/tt&gt;&lt;/a&gt;(true). When &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; operates on a &lt;a href=&quot;%2E%2E/porting4.html#qstring&quot;&gt;&lt;tt&gt;QString&lt;/tt&gt;&lt;/a&gt; directly, the codec is disabled.&lt;/p&gt;
&lt;p&gt;There are three general ways to use &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; when reading text files:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Chunk by chunk, by calling &lt;a href=&quot;QTextStream.html#readLine(long)&quot;&gt;&lt;tt&gt;readLine&lt;/tt&gt;&lt;/a&gt; or &lt;a href=&quot;QTextStream.html#readAll()&quot;&gt;&lt;tt&gt;readAll&lt;/tt&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Word by word. &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; supports streaming into QStrings, QByteArrays and char* buffers. Words are delimited by space, and leading white space is automatically skipped.&lt;/li&gt;
&lt;li&gt;Character by character, by streaming into QChar or char types. This method is often used for convenient input handling when parsing files, independent of character encoding and end-of-line semantics. To skip white space, call &lt;a href=&quot;QTextStream.html#skipWhiteSpace()&quot;&gt;&lt;tt&gt;skipWhiteSpace&lt;/tt&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Since the text stream uses a buffer, you should not read from the stream using the implementation of a superclass. For instance, if you have a &lt;a href=&quot;QFile.html&quot;&gt;&lt;tt&gt;QFile&lt;/tt&gt;&lt;/a&gt; and read from it directly using QFile::readLine() instead of using the stream, the text stream's internal position will be out of sync with the file's position.&lt;/p&gt;
&lt;p&gt;By default, when reading numbers from a stream of text, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; will automatically detect the number's base representation. For example, if the number starts with &amp;quot;0x&amp;quot;, it is assumed to be in hexadecimal form. If it starts with the digits 1-9, it is assumed to be in decimal form, and so on. You can set the integer base, thereby disabling the automatic detection, by calling &lt;a href=&quot;QTextStream.html#setIntegerBase(int)&quot;&gt;&lt;tt&gt;setIntegerBase&lt;/tt&gt;&lt;/a&gt;. Example:&lt;/p&gt;
&lt;pre&gt;    QTextStream in(&amp;quot;0x50 0x20&amp;quot;);
    int firstNumber, secondNumber;

    in &amp;gt;&amp;gt; firstNumber;             &lt;span class=&quot;comment&quot;&gt;//&lt;/span&gt; firstNumber == 80
    in &amp;gt;&amp;gt; dec &amp;gt;&amp;gt; secondNumber;     &lt;span class=&quot;comment&quot;&gt;//&lt;/span&gt; secondNumber == 0

    char ch;
    in &amp;gt;&amp;gt; ch;                      &lt;span class=&quot;comment&quot;&gt;//&lt;/span&gt; ch == 'x'&lt;/pre&gt;
&lt;p&gt;&lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; supports many formatting options for generating text. You can set the field width and pad character by calling &lt;a href=&quot;QTextStream.html#setFieldWidth(int)&quot;&gt;&lt;tt&gt;setFieldWidth&lt;/tt&gt;&lt;/a&gt; and &lt;a href=&quot;QTextStream.html#setPadChar(char)&quot;&gt;&lt;tt&gt;setPadChar&lt;/tt&gt;&lt;/a&gt;. Use &lt;a href=&quot;QTextStream.html#setFieldAlignment(com.trolltech.qt.core.QTextStream.FieldAlignment)&quot;&gt;&lt;tt&gt;setFieldAlignment&lt;/tt&gt;&lt;/a&gt; to set the alignment within each field. For real numbers, call &lt;a href=&quot;QTextStream.html#setRealNumberNotation(com.trolltech.qt.core.QTextStream.RealNumberNotation)&quot;&gt;&lt;tt&gt;setRealNumberNotation&lt;/tt&gt;&lt;/a&gt; and &lt;a href=&quot;QTextStream.html#setRealNumberPrecision(int)&quot;&gt;&lt;tt&gt;setRealNumberPrecision&lt;/tt&gt;&lt;/a&gt; to set the notation (&lt;a href=&quot;QTextStream.html#RealNumberNotation-enum&quot;&gt;&lt;tt&gt;SmartNotation&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;QTextStream.html#RealNumberNotation-enum&quot;&gt;&lt;tt&gt;ScientificNotation&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;QTextStream.html#RealNumberNotation-enum&quot;&gt;&lt;tt&gt;FixedNotation&lt;/tt&gt;&lt;/a&gt;) and precision in digits of the generated number. Some extra number formatting options are also available through &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;a name=&quot;qtextstream-manipulators&quot;&gt;&lt;/a&gt;&lt;p&gt;Like &lt;tt&gt;&amp;lt;iostream&amp;gt;&lt;/tt&gt; in the standard C++ library, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; also defines several global manipulator functions:&lt;/p&gt;
&lt;p&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;2&quot; cellspacing=&quot;1&quot; border=&quot;0&quot;&gt;
&lt;thead&gt;&lt;tr valign=&quot;top&quot; class=&quot;qt-style&quot;&gt;&lt;th&gt;Manipulator&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;
&lt;tr valign=&quot;top&quot; class=&quot;odd&quot;&gt;&lt;td&gt;&lt;tt&gt;bin&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setIntegerBase(int)&quot;&gt;&lt;tt&gt;setIntegerBase&lt;/tt&gt;&lt;/a&gt;(2).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;even&quot;&gt;&lt;td&gt;&lt;tt&gt;oct&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setIntegerBase(int)&quot;&gt;&lt;tt&gt;setIntegerBase&lt;/tt&gt;&lt;/a&gt;(8).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;odd&quot;&gt;&lt;td&gt;&lt;tt&gt;dec&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setIntegerBase(int)&quot;&gt;&lt;tt&gt;setIntegerBase&lt;/tt&gt;&lt;/a&gt;(10).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;even&quot;&gt;&lt;td&gt;&lt;tt&gt;hex&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setIntegerBase(int)&quot;&gt;&lt;tt&gt;setIntegerBase&lt;/tt&gt;&lt;/a&gt;(16).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;odd&quot;&gt;&lt;td&gt;&lt;tt&gt;showbase&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt; | &lt;a href=&quot;QTextStream.html#NumberFlag-enum&quot;&gt;&lt;tt&gt;ShowBase&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;even&quot;&gt;&lt;td&gt;&lt;tt&gt;forcesign&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt; | &lt;a href=&quot;QTextStream.html#NumberFlag-enum&quot;&gt;&lt;tt&gt;ForceSign&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;odd&quot;&gt;&lt;td&gt;&lt;tt&gt;forcepoint&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt; | &lt;a href=&quot;QTextStream.html#NumberFlag-enum&quot;&gt;&lt;tt&gt;ForcePoint&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;even&quot;&gt;&lt;td&gt;&lt;tt&gt;noshowbase&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt; &amp;amp; ~&lt;a href=&quot;QTextStream.html#NumberFlag-enum&quot;&gt;&lt;tt&gt;ShowBase&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;odd&quot;&gt;&lt;td&gt;&lt;tt&gt;noforcesign&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt; &amp;amp; ~&lt;a href=&quot;QTextStream.html#NumberFlag-enum&quot;&gt;&lt;tt&gt;ForceSign&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;even&quot;&gt;&lt;td&gt;&lt;tt&gt;noforcepoint&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt; &amp;amp; ~&lt;a href=&quot;QTextStream.html#NumberFlag-enum&quot;&gt;&lt;tt&gt;ForcePoint&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;odd&quot;&gt;&lt;td&gt;&lt;tt&gt;uppercasebase&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt; | &lt;a href=&quot;QTextStream.html#NumberFlag-enum&quot;&gt;&lt;tt&gt;UppercaseBase&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;even&quot;&gt;&lt;td&gt;&lt;tt&gt;uppercasedigits&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt; | &lt;a href=&quot;QTextStream.html#NumberFlag-enum&quot;&gt;&lt;tt&gt;UppercaseDigits&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;odd&quot;&gt;&lt;td&gt;&lt;tt&gt;lowercasebase&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt; &amp;amp; ~&lt;a href=&quot;QTextStream.html#NumberFlag-enum&quot;&gt;&lt;tt&gt;UppercaseBase&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;even&quot;&gt;&lt;td&gt;&lt;tt&gt;lowercasedigits&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt; &amp;amp; ~&lt;a href=&quot;QTextStream.html#NumberFlag-enum&quot;&gt;&lt;tt&gt;UppercaseDigits&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;odd&quot;&gt;&lt;td&gt;&lt;tt&gt;fixed&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setRealNumberNotation(com.trolltech.qt.core.QTextStream.RealNumberNotation)&quot;&gt;&lt;tt&gt;setRealNumberNotation&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#RealNumberNotation-enum&quot;&gt;&lt;tt&gt;FixedNotation&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;even&quot;&gt;&lt;td&gt;&lt;tt&gt;scientific&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setRealNumberNotation(com.trolltech.qt.core.QTextStream.RealNumberNotation)&quot;&gt;&lt;tt&gt;setRealNumberNotation&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#RealNumberNotation-enum&quot;&gt;&lt;tt&gt;ScientificNotation&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;odd&quot;&gt;&lt;td&gt;&lt;tt&gt;left&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setFieldAlignment(com.trolltech.qt.core.QTextStream.FieldAlignment)&quot;&gt;&lt;tt&gt;setFieldAlignment&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#FieldAlignment-enum&quot;&gt;&lt;tt&gt;AlignLeft&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;even&quot;&gt;&lt;td&gt;&lt;tt&gt;right&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setFieldAlignment(com.trolltech.qt.core.QTextStream.FieldAlignment)&quot;&gt;&lt;tt&gt;setFieldAlignment&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#FieldAlignment-enum&quot;&gt;&lt;tt&gt;AlignRight&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;odd&quot;&gt;&lt;td&gt;&lt;tt&gt;center&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setFieldAlignment(com.trolltech.qt.core.QTextStream.FieldAlignment)&quot;&gt;&lt;tt&gt;setFieldAlignment&lt;/tt&gt;&lt;/a&gt;(&lt;a href=&quot;QTextStream.html#FieldAlignment-enum&quot;&gt;&lt;tt&gt;AlignCenter&lt;/tt&gt;&lt;/a&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;even&quot;&gt;&lt;td&gt;&lt;tt&gt;endl&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as operator&amp;lt;&amp;lt;('\n') and &lt;a href=&quot;QTextStream.html#flush()&quot;&gt;&lt;tt&gt;flush&lt;/tt&gt;&lt;/a&gt;.&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;odd&quot;&gt;&lt;td&gt;&lt;tt&gt;flush&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#flush()&quot;&gt;&lt;tt&gt;flush&lt;/tt&gt;&lt;/a&gt;.&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;even&quot;&gt;&lt;td&gt;&lt;tt&gt;reset&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#reset()&quot;&gt;&lt;tt&gt;reset&lt;/tt&gt;&lt;/a&gt;.&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;odd&quot;&gt;&lt;td&gt;&lt;tt&gt;ws&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#skipWhiteSpace()&quot;&gt;&lt;tt&gt;skipWhiteSpace&lt;/tt&gt;&lt;/a&gt;.&lt;/td&gt;&lt;/tr&gt;
&lt;tr valign=&quot;top&quot; class=&quot;even&quot;&gt;&lt;td&gt;&lt;tt&gt;bom&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Same as &lt;a href=&quot;QTextStream.html#setGenerateByteOrderMark(boolean)&quot;&gt;&lt;tt&gt;setGenerateByteOrderMark&lt;/tt&gt;&lt;/a&gt;(true).&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;&lt;/p&gt;
&lt;p&gt;In addition, Qt provides three global manipulators that take a parameter: qSetFieldWidth(), qSetPadChar(), and qSetRealNumberPrecision().&lt;/p&gt;

@see &lt;a href=&quot;QDataStream.html&quot;&gt;&lt;tt&gt;QDataStream&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QIODevice.html&quot;&gt;&lt;tt&gt;QIODevice&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QFile.html&quot;&gt;&lt;tt&gt;QFile&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QBuffer.html&quot;&gt;&lt;tt&gt;QBuffer&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;%2E%2E/network/QTcpSocket.html&quot;&gt;&lt;tt&gt;QTcpSocket&lt;/tt&gt;&lt;/a&gt;
@see Codecs Example&lt;/tt&gt; */">
    <method name="public QTextStream(com.trolltech.qt.core.QIODevice device)" doc="/**
&lt;p&gt;Constructs a &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; that operates on &lt;tt&gt;device&lt;/tt&gt;.&lt;/p&gt;
 */"/>
    <method name="public QTextStream()" doc="/**
&lt;p&gt;Constructs a &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt;. Before you can use it for reading or writing, you must assign a device or a string.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setDevice(com.trolltech.qt.core.QIODevice)&quot;&gt;&lt;tt&gt;setDevice&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;setString&lt;/tt&gt; */"/>
    <method name="public QTextStream(com.trolltech.qt.core.QByteArray array, com.trolltech.qt.core.QIODevice.OpenMode openMode)" doc="/**
&lt;p&gt;Constructs a &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; that operates on &lt;tt&gt;array&lt;/tt&gt;, using &lt;tt&gt;openMode&lt;/tt&gt; to define the open mode. The array is accessed as read-only, regardless of the values in &lt;tt&gt;openMode&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;This constructor is convenient for working on constant strings. Example:&lt;/p&gt;
&lt;pre&gt;    int main(int argc, char *argv[])
    {
        &lt;span class=&quot;comment&quot;&gt;//&lt;/span&gt; read numeric arguments (123, 0x20, 4.5...)
        for (int i = 1; i &amp;lt; argc; ++i) {
              int number;
              QTextStream in(argv[i]);
              in &amp;gt;&amp;gt; number;
              ...
        }
    }&lt;/pre&gt;
 */"/>
    <method name="public QTextStream(com.trolltech.qt.core.QByteArray array)" doc="/**
&lt;p&gt;Equivalent to &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt;(&lt;tt&gt;array&lt;/tt&gt;, QIODevice::ReadOnly). */"/>
    <method name="public final boolean atEnd()" doc="/**
&lt;p&gt;Returns true if there is no more data to be read from the &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt;; otherwise returns false. This is similar to, but not the same as calling QIODevice::atEnd(), as &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; also takes into account its internal Unicode buffer.&lt;/p&gt;
 */"/>
    <method name="public final boolean autoDetectUnicode()" doc="/**
&lt;p&gt;Returns true if automatic Unicode detection is enabled; otherwise returns false.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setAutoDetectUnicode(boolean)&quot;&gt;&lt;tt&gt;setAutoDetectUnicode&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setCodec(com.trolltech.qt.core.QTextCodec)&quot;&gt;&lt;tt&gt;setCodec&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final com.trolltech.qt.core.QTextCodec codec()" doc="/**
&lt;p&gt;Returns the codec that is current assigned to the stream.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setCodec(com.trolltech.qt.core.QTextCodec)&quot;&gt;&lt;tt&gt;setCodec&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setAutoDetectUnicode(boolean)&quot;&gt;&lt;tt&gt;setAutoDetectUnicode&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final com.trolltech.qt.core.QIODevice device()" doc="/**
&lt;p&gt;Returns the current device associated with the &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt;, or 0 if no device has been assigned.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setDevice(com.trolltech.qt.core.QIODevice)&quot;&gt;&lt;tt&gt;setDevice&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;string&lt;/tt&gt; */"/>
    <method name="public final com.trolltech.qt.core.QTextStream.FieldAlignment fieldAlignment()" doc="/**
&lt;p&gt;Returns the current field alignment.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setFieldAlignment(com.trolltech.qt.core.QTextStream.FieldAlignment)&quot;&gt;&lt;tt&gt;setFieldAlignment&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#fieldWidth()&quot;&gt;&lt;tt&gt;fieldWidth&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final int fieldWidth()" doc="/**
&lt;p&gt;Returns the current field width.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setFieldWidth(int)&quot;&gt;&lt;tt&gt;setFieldWidth&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void flush()" doc="/**
&lt;p&gt;Flushes any buffered data waiting to be written to the device.&lt;/p&gt;
&lt;p&gt;If &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; operates on a string, this function does nothing.&lt;/p&gt;
 */"/>
    <method name="public final boolean generateByteOrderMark()" doc="/**
&lt;p&gt;Returns true if &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; is set to generate the UTF-16 BOM (Byte Order Mark) when using a UTF-16 codec; otherwise returns false.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setGenerateByteOrderMark(boolean)&quot;&gt;&lt;tt&gt;setGenerateByteOrderMark&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final int integerBase()" doc="/**
&lt;p&gt;Returns the current base of integers. 0 means that the base is detected when reading, or 10 (decimal) when generating numbers.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setIntegerBase(int)&quot;&gt;&lt;tt&gt;setIntegerBase&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;QString::number&lt;/tt&gt;
@see &lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final com.trolltech.qt.core.QTextStream.NumberFlags numberFlags()" doc="/**
&lt;p&gt;Returns the current number flags.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#integerBase()&quot;&gt;&lt;tt&gt;integerBase&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#realNumberNotation()&quot;&gt;&lt;tt&gt;realNumberNotation&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final com.trolltech.qt.core.QTextStream writeByte(byte ch)" doc="/**
&lt;p&gt;Converts &lt;tt&gt;ch&lt;/tt&gt; from ASCII to a QChar, then writes it to the stream.&lt;/p&gt;
 */"/>
    <method name="public final com.trolltech.qt.core.QTextStream writeLong(long i)" doc="/**
&lt;p&gt;Writes the qlonglong &lt;tt&gt;i&lt;/tt&gt; to the stream.&lt;/p&gt;
 */"/>
    <method name="public final com.trolltech.qt.core.QTextStream writeInt(int i)" doc="/**
&lt;p&gt;Writes the signed int &lt;tt&gt;i&lt;/tt&gt; to the stream.&lt;/p&gt;
 */"/>
    <method name="public final com.trolltech.qt.core.QTextStream writeDouble(double f)" doc="/**
&lt;p&gt;Writes the double &lt;tt&gt;f&lt;/tt&gt; to the stream.&lt;/p&gt;
 */"/>
    <method name="public final com.trolltech.qt.core.QTextStream writeBoolean(boolean b)" doc="/**
&lt;p&gt;&lt;/p&gt;
 */"/>
    <method name="public final com.trolltech.qt.core.QTextStream writeFloat(float f)" doc="/**
&lt;p&gt;Writes the real number &lt;tt&gt;f&lt;/tt&gt; to the stream, then returns a reference to the &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt;. By default, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; stores it using &lt;a href=&quot;QTextStream.html#RealNumberNotation-enum&quot;&gt;&lt;tt&gt;SmartNotation&lt;/tt&gt;&lt;/a&gt;, with up to 6 digits of precision. You can change the textual representation &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; will use for real numbers by calling &lt;a href=&quot;QTextStream.html#setRealNumberNotation(com.trolltech.qt.core.QTextStream.RealNumberNotation)&quot;&gt;&lt;tt&gt;setRealNumberNotation&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;QTextStream.html#setRealNumberPrecision(int)&quot;&gt;&lt;tt&gt;setRealNumberPrecision&lt;/tt&gt;&lt;/a&gt; and &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setFieldWidth(int)&quot;&gt;&lt;tt&gt;setFieldWidth&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setRealNumberNotation(com.trolltech.qt.core.QTextStream.RealNumberNotation)&quot;&gt;&lt;tt&gt;setRealNumberNotation&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setRealNumberPrecision(int)&quot;&gt;&lt;tt&gt;setRealNumberPrecision&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final char padChar()" doc="/**
&lt;p&gt;Returns the current pad character.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setPadChar(char)&quot;&gt;&lt;tt&gt;setPadChar&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setFieldWidth(int)&quot;&gt;&lt;tt&gt;setFieldWidth&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final long pos()" doc="/**
&lt;p&gt;Returns the device position corresponding to the current position of the stream, or -1 if an error occurs (e.g&amp;#x2e;, if there is no device or string, or if there's a device error).&lt;/p&gt;
&lt;p&gt;Because &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; is buffered, this function may have to seek the device to reconstruct a valid device position. This operation can be expensive, so you may want to avoid calling this function in a tight loop.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#seek(long)&quot;&gt;&lt;tt&gt;seek&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final java.lang.String read(long maxlen)" doc="/**
&lt;p&gt;Reads at most &lt;tt&gt;maxlen&lt;/tt&gt; characters from the stream, and returns the data read as a &lt;a href=&quot;%2E%2E/porting4.html#qstring&quot;&gt;&lt;tt&gt;QString&lt;/tt&gt;&lt;/a&gt;.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#readAll()&quot;&gt;&lt;tt&gt;readAll&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#readLine(long)&quot;&gt;&lt;tt&gt;readLine&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;QIODevice::read&lt;/tt&gt; */"/>
    <method name="public final java.lang.String readAll()" doc="/**
&lt;p&gt;Reads the entire content of the stream, and returns it as a &lt;a href=&quot;%2E%2E/porting4.html#qstring&quot;&gt;&lt;tt&gt;QString&lt;/tt&gt;&lt;/a&gt;. Avoid this function when working on large files, as it will consume a significant amount of memory.&lt;/p&gt;
&lt;p&gt;Calling &lt;a href=&quot;QTextStream.html#readLine(long)&quot;&gt;&lt;tt&gt;readLine&lt;/tt&gt;&lt;/a&gt; is better if you do not know how much data is available.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#readLine(long)&quot;&gt;&lt;tt&gt;readLine&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final java.lang.String readLine(long maxlen)" doc="/**
&lt;p&gt;Reads one line of text from the stream, and returns it as a &lt;a href=&quot;%2E%2E/porting4.html#qstring&quot;&gt;&lt;tt&gt;QString&lt;/tt&gt;&lt;/a&gt;. The maximum allowed line length is set to &lt;tt&gt;maxlen&lt;/tt&gt;. If the stream contains lines longer than this, then the lines will be split after &lt;tt&gt;maxlen&lt;/tt&gt; characters and returned in parts.&lt;/p&gt;
&lt;p&gt;If &lt;tt&gt;maxlen&lt;/tt&gt; is 0, the lines can be of any length. A common value for &lt;tt&gt;maxlen&lt;/tt&gt; is 75.&lt;/p&gt;
&lt;p&gt;The returned line has no trailing end-of-line characters (&amp;quot;\n&amp;quot; or &amp;quot;\r\n&amp;quot;), so calling QString::trimmed() is unnecessary.&lt;/p&gt;
&lt;p&gt;If the stream has read to the end of the file, &lt;a href=&quot;QTextStream.html#readLine(long)&quot;&gt;&lt;tt&gt;readLine&lt;/tt&gt;&lt;/a&gt; will return a null &lt;a href=&quot;%2E%2E/porting4.html#qstring&quot;&gt;&lt;tt&gt;QString&lt;/tt&gt;&lt;/a&gt;. For strings, or for devices that support it, you can explicitly test for the end of the stream using &lt;a href=&quot;QTextStream.html#atEnd()&quot;&gt;&lt;tt&gt;atEnd&lt;/tt&gt;&lt;/a&gt;.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#readAll()&quot;&gt;&lt;tt&gt;readAll&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;QIODevice::readLine&lt;/tt&gt; */"/>
    <method name="public final java.lang.String readLine()" doc="/**
&lt;p&gt;Equivalent to &lt;a href=&quot;QTextStream.html#readLine(long)&quot;&gt;&lt;tt&gt;readLine&lt;/tt&gt;&lt;/a&gt;(0). */"/>
    <method name="public final com.trolltech.qt.core.QTextStream.RealNumberNotation realNumberNotation()" doc="/**
&lt;p&gt;Returns the current real number notation.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setRealNumberNotation(com.trolltech.qt.core.QTextStream.RealNumberNotation)&quot;&gt;&lt;tt&gt;setRealNumberNotation&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#realNumberPrecision()&quot;&gt;&lt;tt&gt;realNumberPrecision&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#integerBase()&quot;&gt;&lt;tt&gt;integerBase&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final int realNumberPrecision()" doc="/**
&lt;p&gt;Returns the current real number precision, or the number of fraction digits &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; will write when generating real numbers.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setRealNumberPrecision(int)&quot;&gt;&lt;tt&gt;setRealNumberPrecision&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setRealNumberNotation(com.trolltech.qt.core.QTextStream.RealNumberNotation)&quot;&gt;&lt;tt&gt;setRealNumberNotation&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#realNumberNotation()&quot;&gt;&lt;tt&gt;realNumberNotation&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#integerBase()&quot;&gt;&lt;tt&gt;integerBase&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void reset()" doc="/**
&lt;p&gt;Resets &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt;'s formatting options, bringing it back to its original constructed state. The device, string and any buffered data is left untouched.&lt;/p&gt;
 */"/>
    <method name="public final void resetStatus()" doc="/**
&lt;p&gt;Resets the status of the text stream.&lt;/p&gt;

@see &lt;tt&gt;QTextStream::Status&lt;/tt&gt;
@see &lt;a href=&quot;QTextStream.html#status()&quot;&gt;&lt;tt&gt;status&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setStatus(com.trolltech.qt.core.QTextStream.Status)&quot;&gt;&lt;tt&gt;setStatus&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final boolean seek(long pos)" doc="/**
&lt;p&gt;Seeks to the position &lt;tt&gt;pos&lt;/tt&gt; in the device. Returns true on success; otherwise returns false.&lt;/p&gt;
 */"/>
    <method name="public final void setAutoDetectUnicode(boolean enabled)" doc="/**
&lt;p&gt;If &lt;tt&gt;enabled&lt;/tt&gt; is true, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; will attempt to detect Unicode encoding by peeking into the stream data to see if it can find the UTF-16 BOM (Byte Order Mark). If this mark is found, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; will replace the current codec with the UTF-16 codec.&lt;/p&gt;
&lt;p&gt;This function can be used together with &lt;a href=&quot;QTextStream.html#setCodec(com.trolltech.qt.core.QTextCodec)&quot;&gt;&lt;tt&gt;setCodec&lt;/tt&gt;&lt;/a&gt;. It is common to set the codec to UTF-8, and then enable UTF-16 detection.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#autoDetectUnicode()&quot;&gt;&lt;tt&gt;autoDetectUnicode&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setCodec(com.trolltech.qt.core.QTextCodec)&quot;&gt;&lt;tt&gt;setCodec&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void setCodec(com.trolltech.qt.core.QTextCodec codec)" doc="/**
&lt;p&gt;Sets the codec for this stream to &lt;tt&gt;codec&lt;/tt&gt;. The codec is used for decoding any data that is read from the assigned device, and for encoding any data that is written. By default, QTextCodec::codecForLocale() is used, and automatic unicode detection is enabled.&lt;/p&gt;
&lt;p&gt;If &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; operates on a string, this function does nothing.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#codec()&quot;&gt;&lt;tt&gt;codec&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setAutoDetectUnicode(boolean)&quot;&gt;&lt;tt&gt;setAutoDetectUnicode&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void setDevice(com.trolltech.qt.core.QIODevice device)" doc="/**
&lt;p&gt;Sets the current device to &lt;tt&gt;device&lt;/tt&gt;. If a device has already been assigned, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; will call &lt;a href=&quot;QTextStream.html#flush()&quot;&gt;&lt;tt&gt;flush&lt;/tt&gt;&lt;/a&gt; before the old device is replaced.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This function resets the codec to the default codec, QTextCodec::codecForLocale().&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#device()&quot;&gt;&lt;tt&gt;device&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;setString&lt;/tt&gt; */"/>
    <method name="public final void setFieldAlignment(com.trolltech.qt.core.QTextStream.FieldAlignment alignment)" doc="/**
&lt;p&gt;Sets the field alignment to &lt;tt&gt;alignment&lt;/tt&gt;. When used together with &lt;a href=&quot;QTextStream.html#setFieldWidth(int)&quot;&gt;&lt;tt&gt;setFieldWidth&lt;/tt&gt;&lt;/a&gt;, this function allows you to generate formatted output with text aligned to the left, to the right or center aligned.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#fieldAlignment()&quot;&gt;&lt;tt&gt;fieldAlignment&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setFieldWidth(int)&quot;&gt;&lt;tt&gt;setFieldWidth&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void setFieldWidth(int width)" doc="/**
&lt;p&gt;Sets the current field width to &lt;tt&gt;width&lt;/tt&gt;. If &lt;tt&gt;width&lt;/tt&gt; is 0 (the default), the field width is equal to the length of the generated text.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#fieldWidth()&quot;&gt;&lt;tt&gt;fieldWidth&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setPadChar(char)&quot;&gt;&lt;tt&gt;setPadChar&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void setGenerateByteOrderMark(boolean generate)" doc="/**
&lt;p&gt;If &lt;tt&gt;generate&lt;/tt&gt; is true and a UTF-16 codec is used, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; will insert the BOM (Byte Order Mark) before any data has been written to the device. If &lt;tt&gt;generate&lt;/tt&gt; is false, no BOM will be inserted. This function must be called before any data is written. Otherwise, it does nothing.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#generateByteOrderMark()&quot;&gt;&lt;tt&gt;generateByteOrderMark&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;bom&lt;/tt&gt; */"/>
    <method name="public final void setIntegerBase(int base)" doc="/**
&lt;p&gt;Sets the base of integers to &lt;tt&gt;base&lt;/tt&gt;, both for reading and for generating numbers. &lt;tt&gt;base&lt;/tt&gt; can be either 2 (binary), 8 (octal), 10 (decimal) or 16 (hexadecimal). If &lt;tt&gt;base&lt;/tt&gt; is 0, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; will attempt to detect the base by inspecting the data on the stream. When generating numbers, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; assumes base is 10 unless the base has been set explicitly.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#integerBase()&quot;&gt;&lt;tt&gt;integerBase&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;QString::number&lt;/tt&gt;
@see &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags flags)" doc="/**
&lt;p&gt;Sets the current number flags to &lt;tt&gt;flags&lt;/tt&gt;. &lt;tt&gt;flags&lt;/tt&gt; is a set of flags from the &lt;a href=&quot;QTextStream.html#NumberFlag-enum&quot;&gt;&lt;tt&gt;NumberFlag&lt;/tt&gt;&lt;/a&gt; enum, and describes options for formatting generated code (e.g&amp;#x2e;, whether or not to always write the base or sign of a number).&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#numberFlags()&quot;&gt;&lt;tt&gt;numberFlags&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setIntegerBase(int)&quot;&gt;&lt;tt&gt;setIntegerBase&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setRealNumberNotation(com.trolltech.qt.core.QTextStream.RealNumberNotation)&quot;&gt;&lt;tt&gt;setRealNumberNotation&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void setPadChar(char ch)" doc="/**
&lt;p&gt;Sets the pad character to &lt;tt&gt;ch&lt;/tt&gt;. The default value is the ASCII space character (' '), or QChar(0x20). This character is used to fill in the space in fields when generating text.&lt;/p&gt;
&lt;p&gt;Example:&lt;/p&gt;
&lt;pre&gt;    QString s;
    QTextStream out(&amp;amp;s);
    out.setFieldWidth(10);
    out.setPadChar('-');
    out &amp;lt;&amp;lt; &amp;quot;Qt&amp;quot; &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; &amp;quot;rocks!&amp;quot; &amp;lt;&amp;lt; endl;&lt;/pre&gt;
&lt;p&gt;Output:&lt;/p&gt;
&lt;pre&gt;    ----Qt----
    --rocks!--&lt;/pre&gt;

@see &lt;a href=&quot;QTextStream.html#padChar()&quot;&gt;&lt;tt&gt;padChar&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setFieldWidth(int)&quot;&gt;&lt;tt&gt;setFieldWidth&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void setRealNumberNotation(com.trolltech.qt.core.QTextStream.RealNumberNotation notation)" doc="/**
&lt;p&gt;Sets the real number notation to &lt;tt&gt;notation&lt;/tt&gt; (&lt;a href=&quot;QTextStream.html#RealNumberNotation-enum&quot;&gt;&lt;tt&gt;SmartNotation&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;QTextStream.html#RealNumberNotation-enum&quot;&gt;&lt;tt&gt;FixedNotation&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;QTextStream.html#RealNumberNotation-enum&quot;&gt;&lt;tt&gt;ScientificNotation&lt;/tt&gt;&lt;/a&gt;). When reading and generating numbers, &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; uses this value to detect the formatting of real numbers.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#realNumberNotation()&quot;&gt;&lt;tt&gt;realNumberNotation&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setRealNumberPrecision(int)&quot;&gt;&lt;tt&gt;setRealNumberPrecision&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setIntegerBase(int)&quot;&gt;&lt;tt&gt;setIntegerBase&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void setRealNumberPrecision(int precision)" doc="/**
&lt;p&gt;Sets the precision of real numbers to &lt;tt&gt;precision&lt;/tt&gt;. This value describes the number of fraction digits &lt;a href=&quot;QTextStream.html#QTextStream(com.trolltech.qt.core.QByteArray, com.trolltech.qt.core.QIODevice.OpenMode)&quot;&gt;&lt;tt&gt;QTextStream&lt;/tt&gt;&lt;/a&gt; should write when generating real numbers.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#realNumberPrecision()&quot;&gt;&lt;tt&gt;realNumberPrecision&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#setRealNumberNotation(com.trolltech.qt.core.QTextStream.RealNumberNotation)&quot;&gt;&lt;tt&gt;setRealNumberNotation&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void setStatus(com.trolltech.qt.core.QTextStream.Status status)" doc="/**
&lt;p&gt;Sets the status of the text stream to the &lt;tt&gt;status&lt;/tt&gt; given.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#Status-enum&quot;&gt;Status&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#status()&quot;&gt;&lt;tt&gt;status&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#resetStatus()&quot;&gt;&lt;tt&gt;resetStatus&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void skipWhiteSpace()" doc="/**
&lt;p&gt;Reads and discards whitespace from the stream until either a non-space character is detected, or until &lt;a href=&quot;QTextStream.html#atEnd()&quot;&gt;&lt;tt&gt;atEnd&lt;/tt&gt;&lt;/a&gt; returns true. This function is useful when reading a stream character by character.&lt;/p&gt;
&lt;p&gt;Whitespace characters are all characters for which QChar::isSpace() returns true.&lt;/p&gt;

@see &lt;tt&gt;operator&amp;gt;&amp;gt;&lt;/tt&gt; */"/>
    <method name="public final com.trolltech.qt.core.QTextStream.Status status()" doc="/**
&lt;p&gt;Returns the status of the text stream.&lt;/p&gt;

@see &lt;tt&gt;QTextStream::Status&lt;/tt&gt;
@see &lt;a href=&quot;QTextStream.html#setStatus(com.trolltech.qt.core.QTextStream.Status)&quot;&gt;&lt;tt&gt;setStatus&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextStream.html#resetStatus()&quot;&gt;&lt;tt&gt;resetStatus&lt;/tt&gt;&lt;/a&gt; */"/>
    <enum name="RealNumberNotation" doc="/**
&lt;p&gt;This enum specifies which notations to use for expressing &lt;tt&gt;float&lt;/tt&gt; and &lt;tt&gt;double&lt;/tt&gt; as strings.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setRealNumberNotation(com.trolltech.qt.core.QTextStream.RealNumberNotation)&quot;&gt;&lt;tt&gt;setRealNumberNotation&lt;/tt&gt;&lt;/a&gt; */">
        <enum-value name="SmartNotation" doc="/**
&lt;p&gt;Scientific or fixed-point notation, depending on which makes most sense (&lt;tt&gt;printf()&lt;/tt&gt;'s &lt;tt&gt;%g&lt;/tt&gt; flag).&lt;/p&gt;
 */"/>
        <enum-value name="FixedNotation" doc="/**
&lt;p&gt;Fixed-point notation (&lt;tt&gt;printf()&lt;/tt&gt;'s &lt;tt&gt;%f&lt;/tt&gt; flag).&lt;/p&gt;
 */"/>
        <enum-value name="ScientificNotation" doc="/**
&lt;p&gt;Scientific notation (&lt;tt&gt;printf()&lt;/tt&gt;'s &lt;tt&gt;%e&lt;/tt&gt; flag).&lt;/p&gt;
 */"/>
</enum>
    <enum name="NumberFlag" doc="/**
&lt;p&gt;This enum specifies various flags that can be set to affect the output of integers, &lt;tt&gt;float&lt;/tt&gt;s, and &lt;tt&gt;double&lt;/tt&gt;s.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setNumberFlags(com.trolltech.qt.core.QTextStream.NumberFlags)&quot;&gt;&lt;tt&gt;setNumberFlags&lt;/tt&gt;&lt;/a&gt; */">
        <enum-value name="ShowBase" doc="/**
&lt;p&gt;Show the base as a prefix if the base is 16 (&amp;quot;0x&amp;quot;), 8 (&amp;quot;0&amp;quot;), or 2 (&amp;quot;0b&amp;quot;).&lt;/p&gt;
 */"/>
        <enum-value name="ForcePoint" doc="/**
&lt;p&gt;Always put the decimal separator in numbers, even if there are no decimals.&lt;/p&gt;
 */"/>
        <enum-value name="ForceSign" doc="/**
&lt;p&gt;Always put the sign in numbers, even for positive numbers.&lt;/p&gt;
 */"/>
        <enum-value name="UppercaseBase" doc="/**
&lt;p&gt;Use uppercase versions of base prefixes (&amp;quot;0X&amp;quot;, &amp;quot;0B&amp;quot;).&lt;/p&gt;
 */"/>
        <enum-value name="UppercaseDigits" doc="/**
&lt;p&gt;Use uppercase letters for expressing digits 10 to 35 instead of lowercase.&lt;/p&gt;
 */"/>
</enum>
    <enum name="FieldAlignment" doc="/**
&lt;p&gt;This enum specifies how to align text in fields when the field is wider than the text that occupies it.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#setFieldAlignment(com.trolltech.qt.core.QTextStream.FieldAlignment)&quot;&gt;&lt;tt&gt;setFieldAlignment&lt;/tt&gt;&lt;/a&gt; */">
        <enum-value name="AlignLeft" doc="/**
&lt;p&gt;Pad on the right side of fields.&lt;/p&gt;
 */"/>
        <enum-value name="AlignRight" doc="/**
&lt;p&gt;Pad on the left side of fields.&lt;/p&gt;
 */"/>
        <enum-value name="AlignCenter" doc="/**
&lt;p&gt;Pad on both sides of field.&lt;/p&gt;
 */"/>
        <enum-value name="AlignAccountingStyle" doc="/**
&lt;p&gt;Same as &lt;a href=&quot;QTextStream.html#FieldAlignment-enum&quot;&gt;&lt;tt&gt;AlignRight&lt;/tt&gt;&lt;/a&gt;, except that the sign of a number is flush left.&lt;/p&gt;
 */"/>
</enum>
    <enum name="Status" doc="/**
&lt;p&gt;This enum describes the current status of the text stream.&lt;/p&gt;

@see &lt;a href=&quot;QTextStream.html#status()&quot;&gt;&lt;tt&gt;status&lt;/tt&gt;&lt;/a&gt; */">
        <enum-value name="Ok" doc="/**
&lt;p&gt;The text stream is operating normally.&lt;/p&gt;
 */"/>
        <enum-value name="ReadPastEnd" doc="/**
&lt;p&gt;The text stream has read past the end of the data in the underlying device.&lt;/p&gt;
 */"/>
        <enum-value name="ReadCorruptData" doc="/**
&lt;p&gt;The text stream has read corrupt data.&lt;/p&gt;
 */"/>
</enum>
</class>
