📄 qiodevice.html
字号:
<p> 这个虚函数在所有的子类中必须被重新实现。
<p> <p>也可以参考<a href="#putch">putch</a>()和<a href="#ungetch">ungetch</a>()。
<p>在<a href="qfile.html#getch">QFile</a>和<a href="qsocket.html#getch">QSocket</a>中被重新实现。
<h3 class=fn>bool <a name="isAsynchronous"></a>QIODevice::isAsynchronous () const
</h3>
如果这个输入/输出设备是一个异步设备,返回真,否则返回假,比如,如果这个设备是一个同步设备。
<p> 这个模式当前不在使用中。
<p> <p>也可以参考<a href="#isSynchronous">isSynchronous</a>()。
<h3 class=fn>bool <a name="isBuffered"></a>QIODevice::isBuffered () const
</h3>
如果这个输入/输出设备是一个被缓存的设备,返回真,否则返回假,比如,如果这个设备是一个直接的设备。
<p>也可以参考<a href="#isRaw">isRaw</a>()。
<h3 class=fn>bool <a name="isCombinedAccess"></a>QIODevice::isCombinedAccess () const
</h3>
如果这个输入/输出设备是一个组合存取(既可以随机存取也可以顺序存取)的设备,返回真,否则返回假。
<p> 这个访问方法当前不在使用中。
<h3 class=fn>bool <a name="isDirectAccess"></a>QIODevice::isDirectAccess () const
</h3>
如果这个输入/输出设备是一个随机存取的设备,返回真,否则返回假,比如,如果这个设备是一个顺序存取的设备。
<p>也可以参考<a href="#isSequentialAccess">isSequentialAccess</a>()。
<h3 class=fn>bool <a name="isInactive"></a>QIODevice::isInactive () const
</h3>
如果这个输入/输出设备状态是0,返回真,比如,这个设备没有打开,否则返回假。
<p>也可以参考<a href="#isOpen">isOpen</a>()。
<h3 class=fn>bool <a name="isOpen"></a>QIODevice::isOpen () const
</h3>
如果这个输入/输出设备已经被打开,返回真,否则返回假。
<p>也可以参考<a href="#isInactive">isInactive</a>()。
<p>实例:<a href="networkprotocol-example.html#x599">network/networkprotocol/nntp.cpp</a>。
<h3 class=fn>bool <a name="isRaw"></a>QIODevice::isRaw () const
</h3>
如果这个输入/输出设备是一个直接设备,返回真,否则返回假,比如,如果这个设备是一个被缓存的设备。
<p>也可以参考<a href="#isBuffered">isBuffered</a>()。
<h3 class=fn>bool <a name="isReadWrite"></a>QIODevice::isReadWrite () const
</h3>
如果这个输入/输出设备被使用<a href="qfile.html#open">IO_ReadWrite</a>模式打开,返回真,否则返回假。
<p>也可以参考<a href="#isReadable">isReadable</a>()和<a href="#isWritable">isWritable</a>()。
<h3 class=fn>bool <a name="isReadable"></a>QIODevice::isReadable () const
</h3>
如果这个输入/输出设备被使用<a href="qfile.html#open">IO_ReadOnly</a>或<a href="qfile.html#open">IO_ReadWrite</a> 模式打开,返回真,否则返回假。
<p>也可以参考<a href="#isWritable">isWritable</a>()和<a href="#isReadWrite">isReadWrite</a>()。
<h3 class=fn>bool <a name="isSequentialAccess"></a>QIODevice::isSequentialAccess () const
</h3>
如果这个输入/输出设备是一个顺序存取的设备,返回真,否则返回假,比如,如果这个设备是一个随机存取的设备。
<p> 包括<a href="#size">size</a>()和<a href="#at">at</a>(int)的操作在顺序存取的设备上都是无效的。
<p>也可以参考<a href="#isDirectAccess">isDirectAccess</a>()。
<h3 class=fn>bool <a name="isSynchronous"></a>QIODevice::isSynchronous () const
</h3>
如果这个输入/输出设备是一个同步设备,返回真,否则返回假,比如,如果这个设备是一个异步设备。
<p>也可以参考<a href="#isAsynchronous">isAsynchronous</a>()。
<h3 class=fn>bool <a name="isTranslated"></a>QIODevice::isTranslated () const
</h3>
如果这个输入/输出设备翻译回车/换行,返回真,否则返回假。
<p> 如果<a href="qfile.html">QFile</a>是以<a href="qfile.html#open">IO_Translate</a>模式标记打开的,它就是被翻译的。
<h3 class=fn>bool <a name="isWritable"></a>QIODevice::isWritable () const
</h3>
如果这个输入/输出设备被使用<a href="qfile.html#open">IO_WriteOnly</a>或<a href="qfile.html#open">IO_ReadWrite</a>模式打开,返回真,否则返回假。
<p>也可以参考<a href="#isReadable">isReadable</a>()和<a href="#isReadWrite">isReadWrite</a>()。
<h3 class=fn>int <a name="mode"></a>QIODevice::mode () const
</h3>
返回指定的当前操作模式的位或运算的结果。
<p> 这里是提供给<a href="#open">open</a>()函数的标记。
<p> 这些标记是<a href="qfile.html#open">IO_ReadOnly</a>、<a href="qfile.html#open">IO_WriteOnly</a>、<a href="qfile.html#open">IO_ReadWrite</a>、<a href="qfile.html#open">IO_Append</a>、<a href="qfile.html#open">IO_Truncate</a>和<a href="qfile.html#open">IO_Translate</a>。
<h3 class=fn>bool <a name="open"></a>QIODevice::open ( int mode )<tt> [纯虚]</tt>
</h3>
使用指定的<em>mode</em>打开输入/输出设备。如果这个设备被成功打开,返回真,否则返回假。
<p> 模式参数<em>mode</em>必须是下列标记的或的组合。
<ul>
<li> <a href="qfile.html#open">IO_Raw</a> 指定直接的(非缓存的)文件访问。
<li> <a href="qfile.html#open">IO_ReadOnly</a> 以只读模式打开文件。
<li> <a href="qfile.html#open">IO_WriteOnly</a> 以只写模式打开文件。
<li> <a href="qfile.html#open">IO_ReadWrite</a> 以读/写模式打开文件。
<li> <a href="qfile.html#open">IO_Append</a> 设置文件索引到文件的末尾。
<li> <a href="qfile.html#open">IO_Truncate</a> 截短文件。
<li> <a href="qfile.html#open">IO_Translate</a> 在MS-DOS、Windows和Macintosh下对文本文件翻译回车和换行。在Unix系统上这个标记无效。使用时请注意,它会把文件中的每一个换行符转换为一组回车换行。如果你写二进制数据的时候,可能会破坏你要写的文件。请不要和<a href="qfile.html#open">IO_Raw</a>组合使用。
</ul>
<p> 这个虚函数在所有的子类中必须被重新实现。
<p> <p>也可以参考<a href="#close">close</a>()。
<p>实例:<a href="grapher-nsplugin-example.html#x2680">grapher/grapher.cpp</a>。
<p>在<a href="qfile.html#open">QFile</a>和<a href="qsocket.html#open">QSocket</a>中被重新实现。
<h3 class=fn>int <a name="putch"></a>QIODevice::putch ( int ch )<tt> [纯虚]</tt>
</h3>
<p> 向输入/输出设备写入字符<em>ch</em>。
<p> 返回<em>ch</em>,或者如果发生错误,返回-1。
<p> 这个虚函数在所有的子类中必须被重新实现。
<p> <p>也可以参考<a href="#getch">getch</a>()和<a href="#ungetch">ungetch</a>()。
<p>实例:<a href="grapher-nsplugin-example.html#x2681">grapher/grapher.cpp</a>。
<p>在<a href="qfile.html#putch">QFile</a>和<a href="qsocket.html#putch">QSocket</a>中被重新实现。
<h3 class=fn><a href="qbytearray.html">QByteArray</a> <a name="readAll"></a>QIODevice::readAll ()<tt> [虚]</tt>
</h3>
这个方便的函数返回这个设备中的所有剩余数据。
<h3 class=fn>Q_LONG <a name="readBlock"></a>QIODevice::readBlock ( char * data, Q_ULONG maxlen )<tt> [纯虚]</tt>
</h3>
从这个输入/输出设备中读取最多<em>maxlen</em>字节到<em>data</em>并且返回实际读取的字节数量。
<p> 如果发生致命错误,这个函数应该返回-1。
<p> 这个虚函数在所有的子类中必须被重新实现。
<p> <p>也可以参考<a href="#writeBlock">writeBlock</a>()。
<p>在<a href="qfile.html#readBlock">QFile</a>、<a href="qsocket.html#readBlock">QSocket</a>和<a href="qsocketdevice.html#readBlock">QSocketDevice</a>中被重新实现。
<h3 class=fn>Q_LONG <a name="readLine"></a>QIODevice::readLine ( char * data, Q_ULONG maxlen )<tt> [虚]</tt>
</h3>
读取文本的一行,(或者如果还没有遇到新的一行的情况下,读取<em>maxlen</em>字节)加上一个结束符\0到<em>data</em>。如果这一行后面还有新的一行,就不再做上述的操作了。
<p> 返回包括终结符\0的所读字节数,或者如果发生错误返回-1。
<p> 这个虚函数在绝大多数子类中被重新实现的话能够提供更高的效率。
<p> <p>也可以参考<a href="#readBlock">readBlock</a>()和<a href="qtextstream.html#readLine">QTextStream::readLine</a>()。
<p>在<a href="qfile.html#readLine">QFile</a>中被重新实现。
<h3 class=fn>bool <a name="reset"></a>QIODevice::reset ()
</h3>
设置这个设备索引位置为0。
<p>也可以参考<a href="#at">at</a>()。
<h3 class=fn>void <a name="resetStatus"></a>QIODevice::resetStatus ()
</h3>
<p> 设置这个输入/输出设备状态为<a href="qiodevice.html#status">IO_Ok</a>。
<p> <p>也可以参考<a href="#status">status</a>()。
<h3 class=fn><a href="qiodevice.html#Offset">Offset</a> <a name="size"></a>QIODevice::size () const<tt> [纯虚]</tt>
</h3>
虚函数返回输入/输出设备的大小。
<p>也可以参考<a href="#at">at</a>()。
<p>在<a href="qfile.html#size">QFile</a>和<a href="qsocket.html#size">QSocket</a>中被重新实现。
<h3 class=fn>int <a name="state"></a>QIODevice::state () const
</h3>
返回指定当前状态的位或运算结果。
<p> 这个标记是:<tt>IO_Open</tt>。
<p> 子类也可以定义另外的标记。
<h3 class=fn>int <a name="status"></a>QIODevice::status () const
</h3>
返回这个输入/输出设备的状态。
<p> 这个输入/输出设备状态返回一个错误码。如果<a href="#open">open</a>()返回失败或者<a href="#readBlock">readBlock</a>()或<a href="#writeBlock">writeBlock</a>()返回-1,这个函数就可以被调用来发现操作为什么不成功的原因。
<p> <!-- index IO_Ok --><!-- index IO_ReadError --><!-- index IO_WriteError --><!-- index IO_FatalError --><!-- index IO_OpenError --><!-- index IO_ConnectError --><!-- index IO_AbortError --><!-- index IO_TimeOutError --><!-- index IO_UnspecifiedError -->
<p> 状态码是:
<ul>
<li> <a href="qiodevice.html#status">IO_Ok</a> - 操作成功。
<li> <a href="qiodevice.html#status">IO_ReadError</a> - 不能从设备中读取。
<li> <a href="qiodevice.html#status">IO_WriteError</a> - 不能向设备写入。
<li> <a href="qiodevice.html#status">IO_FatalError</a> - 发生了致命的不可恢复的错误。
<li> <a href="qiodevice.html#status">IO_OpenError</a> - 不能打开设备。
<li> <a href="qiodevice.html#status">IO_ConnectError</a> - 不能连接设备。
<li> <a href="qiodevice.html#status">IO_AbortError</a> - 操作出乎意料地失败了。
<li> <a href="qiodevice.html#status">IO_TimeOutError</a> - 操作超时。
<li> <a href="qiodevice.html#status">IO_UnspecifiedError</a> - 关闭时发生了未指定的错误。
</ul>
<p> <p>也可以参考<a href="#resetStatus">resetStatus</a>()。
<h3 class=fn>int <a name="ungetch"></a>QIODevice::ungetch ( int ch )<tt> [纯虚]</tt>
</h3>
<p> 把字符<em>ch</em>放回到这个输入/输车设备中并且如果索引位置不是零的话,减一。
<p> 这个函数正常地被调用就是“撤销”<a href="#getch">getch</a>()操作。
<p> 返回<em>ch</em>,或者如果发生错误,返回-1。
<p> 这个虚函数在所有的子类中必须被重新实现。
<p> <p>也可以参考<a href="#getch">getch</a>()和<a href="#putch">putch</a>()。
<p>在<a href="qfile.html#ungetch">QFile</a>和<a href="qsocket.html#ungetch">QSocket</a>中被重新实现。
<h3 class=fn>Q_LONG <a name="writeBlock"></a>QIODevice::writeBlock ( const char * data, Q_ULONG len )<tt> [纯虚]</tt>
</h3>
从<em>data</em>中写<em>len</em>字节到这个输入/输出设备并且返回实际写的字节数。
<p> 如果发生致命错误,这个函数应该返回-1。
<p> 这个虚函数在所有的子类中必须被重新实现。
<p> <p>也可以参考<a href="#readBlock">readBlock</a>()。
<p>在<a href="qbuffer.html#writeBlock">QBuffer</a>、<a href="qsocket.html#writeBlock">QSocket</a>和<a href="qsocketdevice.html#writeBlock">QSocketDevice</a>中被重新实现。
<h3 class=fn>Q_LONG <a name="writeBlock-2"></a>QIODevice::writeBlock ( const <a href="qbytearray.html">QByteArray</a> & data )
</h3>
这是一个重载成员函数,提供了方便。它的行为和上面的函数基本一致。
<p> 这个方便的函数与调用<a href="#writeBlock">writeBlock</a>( data.data(), data.<a href="#size">size</a>() )是一样的。
<!-- eof -->
<hr><p>
这个文件是<a href="index.html">Qt工具包</a>一部分。
版权所有 © 1995-2002
<a href="http://www.trolltech.com/">Trolltech</a>。保留所有权利。
<p><address><hr><div align=center>
<table width=100% cellspacing=0 border=0><tr>
<td>Copyright © 2002
<a href="http://www.trolltech.com">Trolltech</a>
<td><a href="http://www.trolltech.com/trademarks.html">Trademarks</a>
<td><a href="zh_CN.html">译者:Cavendish</a>
<td align=right><div align=right>Qt 3.0.5版</div>
</table></div></address></body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -