Sese Framework
x.y.z
A cross-platform framework
|
输出流包装类,Windows 下 UTF-8 需要特殊处理 更多...
#include <BaseStreamReader.h>
Public 类型 | |
using | Ptr = std::shared_ptr<BaseStreamReader<T>> |
Public 成员函数 | |
BaseStreamReader (const Stream::Ptr &source) | |
构造函数 | |
bool | read (T &ch) |
读取一个字符 | |
std::basic_string< T > | readLine () |
读取一行 | |
const ByteBuilder::Ptr & | getBuffer () noexcept |
由于 BaseStreamReader 的缓存机制,导致缓存尾部数据可能丢失,该函数返回超前未被读取部分数据长度 | |
Private 成员函数 | |
int64_t | preRead () |
Private 属性 | |
Stream::Ptr | sourceStream |
ByteBuilder::Ptr | bufferStream |
输出流包装类,Windows 下 UTF-8 需要特殊处理
using sese::io::BaseStreamReader< T >::Ptr = std::shared_ptr<BaseStreamReader<T>> |
|
inlineexplicit |
构造函数
source | 欲包装流 |
引用了 sese::io::BaseStreamReader< T >::bufferStream , 以及 sese::io::BaseStreamReader< T >::sourceStream.
|
inlinenoexcept |
由于 BaseStreamReader 的缓存机制,导致缓存尾部数据可能丢失,该函数返回超前未被读取部分数据长度
|
inlineprivate |
|
inline |
读取一个字符
ch | 字符容器 |
未命中缓存,尝试从源中读取
FileStream 读至文件尾返回值为 0 源已被读完
嘿嘿,读取到一个字符
引用了 sese::io::BaseStreamReader< T >::bufferStream , 以及 sese::io::BaseStreamReader< T >::preRead().
|
inline |
读取一行
有东西可读
引用了 sese::io::BaseStreamReader< T >::bufferStream, sese::io::BaseStreamReader< T >::preRead() , 以及 sese::io::BaseStreamReader< T >::read().
|
private |
|
private |