fastdo  0.6.16
winux::MemoryFile类 参考

内存式文件 更多...

#include <filesys.hpp>

类 winux::MemoryFile 继承关系图:
winux::MemoryFile 的协作图:

Public 成员函数

 MemoryFile ()
 构造函数0 更多...
 
 MemoryFile (void const *data, size_t size, bool isPeek=false)
 构造函数1 更多...
 
 MemoryFile (Buffer const &buf, bool isPeek=false)
 构造函数2 更多...
 
 MemoryFile (AnsiString const &content, bool isPeek=false)
 构造函数3 更多...
 
virtual bool open (String const &content, String const &mode=Literal< String::value_type >::nulStr) override
 字符串内容(不会进行编码转换)以内存文件的方式读写 更多...
 
virtual bool close () override
 关闭文件 更多...
 
virtual size_t read (void *buf, size_t size) override
 读数据,返回读取的字节数 更多...
 
virtual size_t write (void const *data, size_t size) override
 写数据,返回写入的字节数 更多...
 
virtual bool rewind () override
 重置文件指针到头 更多...
 
virtual bool seek (offset_t offset, SeekType origin=seekSet) override
 移动文件指针,offset表示偏移量 更多...
 
virtual size_t tell () override
 获得文件指针位置 更多...
 
virtual String getLine () override
 获取一行字符串,包括换行符。如果返回空串说明文件结束 更多...
 
virtual int puts (String const &str) override
 输出字符串(不会进行编码转换) 更多...
 
virtual bool eof () override
 文件是否结束 更多...
 
virtual size_t size () override
 文件大小 更多...
 
virtual Buffer buffer (bool isPeek=true) override
 读取整个文件内容,返回缓冲区 更多...
 
- Public 成员函数 继承自 winux::IFile
virtual ~IFile ()
 
Buffer read (size_t size)
 读数据 更多...
 
template<typename _PodType >
bool readType (_PodType *data, size_t size=sizeof(_PodType))
 读POD类型数据 更多...
 
template<typename _PodType >
_PodType readType (size_t size=sizeof(_PodType))
 读POD类型数据 更多...
 
size_t write (Buffer const &buf)
 写数据,返回写入的字节数 更多...
 
template<typename _PodType >
bool writeType (_PodType const &data, size_t size=sizeof(_PodType))
 写POD类型数据 更多...
 
String entire (FileEncoding encoding=feMultiByte, bool convertNewline=false)
 读取整个文件内容作字符串 更多...
 

Protected 属性

GrowBuffer _buf
 
winux::byte_p
 

详细描述

内存式文件

在文件 filesys.hpp378 行定义.

构造及析构函数说明

winux::MemoryFile::MemoryFile ( )

构造函数0

winux::MemoryFile::MemoryFile ( void const *  data,
size_t  size,
bool  isPeek = false 
)

构造函数1

参数
[in]data数据指针
[in]size数据大小
[in]isPeek是否为窥探模式
winux::MemoryFile::MemoryFile ( Buffer const &  buf,
bool  isPeek = false 
)

构造函数2

参数
[in]buf数据缓冲区对象
[in]isPeek是否为窥探模式
winux::MemoryFile::MemoryFile ( AnsiString const &  content,
bool  isPeek = false 
)

构造函数3

参数
[in]content内容
[in]isPeek是否为窥探模式

成员函数说明

virtual bool winux::MemoryFile::open ( String const &  content,
String const &  mode = Literal< String::value_type >::nulStr 
)
overridevirtual

字符串内容(不会进行编码转换)以内存文件的方式读写

与IFile接口定义时不同,内存式文件open()方法的第一个参数指定内存内容。

参数
[in]content字符串内容
[in]mode含"r"表示内部缓冲区为窥探模式

重载 winux::IFile .

virtual bool winux::MemoryFile::close ( )
overridevirtual

关闭文件

重载 winux::IFile .

virtual size_t winux::MemoryFile::read ( void *  buf,
size_t  size 
)
overridevirtual

读数据,返回读取的字节数

重载 winux::IFile .

virtual size_t winux::MemoryFile::write ( void const *  data,
size_t  size 
)
overridevirtual

写数据,返回写入的字节数

重载 winux::IFile .

virtual bool winux::MemoryFile::rewind ( )
overridevirtual

重置文件指针到头

重载 winux::IFile .

virtual bool winux::MemoryFile::seek ( offset_t  offset,
SeekType  origin = seekSet 
)
overridevirtual

移动文件指针,offset表示偏移量

重载 winux::IFile .

virtual size_t winux::MemoryFile::tell ( )
overridevirtual

获得文件指针位置

重载 winux::IFile .

virtual String winux::MemoryFile::getLine ( )
overridevirtual

获取一行字符串,包括换行符。如果返回空串说明文件结束

重载 winux::IFile .

virtual int winux::MemoryFile::puts ( String const &  str)
overridevirtual

输出字符串(不会进行编码转换)

重载 winux::IFile .

virtual bool winux::MemoryFile::eof ( )
overridevirtual

文件是否结束

重载 winux::IFile .

virtual size_t winux::MemoryFile::size ( )
overridevirtual

文件大小

重载 winux::IFile .

virtual Buffer winux::MemoryFile::buffer ( bool  isPeek = true)
overridevirtual

读取整个文件内容,返回缓冲区

参数
isPeek是否为窥探模式,默认true
返回
Buffer
注意
由于文本模式可能存在字符转换,数据大小并不一定等于文件大小

重载 winux::IFile .

类成员变量说明

GrowBuffer winux::MemoryFile::_buf
protected

在文件 filesys.hpp423 行定义.

winux::byte* winux::MemoryFile::_p
protected

在文件 filesys.hpp424 行定义.


该类的文档由以下文件生成: