YSTest  PreAlpha_b500_20140530
The YSLib Test Project
 全部  命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义  
YSLib::File类 参考

文件基类。 更多...

#include <File.h>

类 YSLib::File 继承关系图:
YSLib::File 的协作图:

Public 成员函数

 File ()
 构造。 更多...
 
 File (const char *, const char *="rb")
 构造:使用指定文件路径初始化对象。 更多...
 
 File (const char *, std::ios_base::openmode)
 
 File (const String &, const ucs2_t *=u"rb")
 
 File (const String &, std::ios_base::openmode)
 
virtual ~File ()
 析构。 更多...
 
 PDefHOp (bool,!,) const ynothrow ImplRet(!bool(*this)) explicit DefCvt(const ynothrow
 判断无效性。 更多...
 
fp DefGetter (const ynothrow, FILE *, Ptr, fp) DefGetter(const ynothrow
 
fp fsize DefGetter (const ynothrow, ptrdiff_t, Position, std::ftell(fp)) PDefH(int
 < 取文件大小。 更多...
 
fp fsize ptrdiff_t int whence const ImplRet (std::fseek(fp, offset, whence)) PDefH(int
 检测文件结束符。 更多...
 
void Close ()
 检查文件有效长度后读位置返回文件起始。 更多...
 
bool Open (const String &, const ucs2_t *=u"rb")
 
bool Open (const String &, std::ios_base::openmode)
 

Public 属性

 bool
 
fp size_t
 
fp Size
 
fp fsize Seek
 
fp fsize ptrdiff_t offset
 
fp fsize ptrdiff_t int whence const CheckEOF
 

Private 属性

std::FILE * fp
 
size_t fsize
 文件大小。 更多...
 

相关函数

(请注意: 这些不是成员函数.)

template<typename _tChar >
Fileoperator>> (File &f, typename std::char_traits< _tChar >::char_type &c)
 从指定文件读字符。 更多...
 
template<typename _tString >
Fileoperator>> (File &f, _tString &str)
 从指定文件读空白符分隔的字符串。 更多...
 
Fileoperator<< (File &f, char c)
 向指定文件写字符。 更多...
 
Fileoperator<< (File &f, const char *str)
 向指定文件写字符串。 更多...
 
template<typename _tString >
Fileoperator<< (File &f, const _tString &str)
 向指定文件写字符串。 更多...
 

额外继承的成员函数

- Private 成员函数 继承自 ystdex::noncopyable
 noncopyable (const noncopyable &)=delete
 禁止复制构造。 更多...
 
noncopyableoperator= (const noncopyable &)=delete
 禁止赋值复制。 更多...
 
 noncopyable ()=default
 protected 构造:默认实现。 更多...
 
 ~noncopyable ()=default
 protected 析构:默认实现。 更多...
 

详细描述

文件基类。

自从
build 206

在文件 File.h43 行定义.

构造及析构函数说明

YSLib::File::File ( )

构造。

注解
得到空对象。

在文件 File.cpp35 行定义.

YSLib::File::File ( const char *  filename,
const char *  mode = "rb" 
)
explicit

构造:使用指定文件路径初始化对象。

注解
自动打开文件。
自从
build 326
build 412

在文件 File.cpp38 行定义.

参考 fsize, Open() , 以及 Seek.

函数调用图:

YSLib::File::File ( const char *  filename,
std::ios_base::openmode  mode 
)
自从
build 412

在文件 File.cpp48 行定义.

YSLib::File::File ( const String filename,
const ucs2_t *  mode = u"rb" 
)
explicit

在文件 File.cpp51 行定义.

参考 fsize, Open() , 以及 Seek.

函数调用图:

YSLib::File::File ( const String filename,
std::ios_base::openmode  mode 
)

在文件 File.cpp61 行定义.

YSLib::File::~File ( )
virtual

析构。

注解
自动关闭文件。

在文件 File.cpp65 行定义.

参考 Close().

函数调用图:

成员函数说明

void YSLib::File::Close ( )

检查文件有效长度后读位置返回文件起始。

自从
build 305

关闭文件。

注解
语义同 std::fclose
清除文件指针。

在文件 File.cpp79 行定义.

参考 fp.

参考自 Open() , 以及 ~File().

这是这个函数的调用关系图:

fp YSLib::File::DefGetter ( const ynothrow  ,
FILE *  ,
Ptr  ,
fp   
) const
fp fsize YSLib::File::DefGetter ( const ynothrow  ,
ptrdiff_t  ,
Position  ,
std::  ftellfp 
)

< 取文件大小。

取文件指针的位置,返回值语义同 std::ftell 。

设置文件指针位置。

注解
参数和返回值语义同 std::fseek
自从
build 273
fp fsize ptrdiff_t int whence const YSLib::File::ImplRet ( std::  fseekfp, offset, whence)

检测文件结束符。

注解
参数和返回值语义同 std::feof()
bool YSLib::File::Open ( const String filename,
const ucs2_t *  mode = u"rb" 
)

在文件 File.cpp99 行定义.

参考 Close(), fp , 以及 platform::ufopen().

参考自 File() , 以及 Open().

函数调用图:

这是这个函数的调用关系图:

bool YSLib::File::Open ( const String filename,
std::ios_base::openmode  mode 
)

在文件 File.cpp107 行定义.

参考 Open() , 以及 ystdex::openmode_conv().

函数调用图:

YSLib::File::PDefHOp ( bool  ,
 
) const

判断无效性。

自从
build 319

判断有效性。

自从
build 319

友元及相关函数文档

File & operator<< ( File f,
char  c 
)
related

向指定文件写字符。

自从
build 326

在文件 File.h239 行定义.

参考 YSLib::UI::f , 以及 YAssert.

File & operator<< ( File f,
const char *  str 
)
related

向指定文件写字符串。

自从
build 326

在文件 File.h250 行定义.

参考 YSLib::UI::f , 以及 YAssert.

template<typename _tString >
File & operator<< ( File f,
const _tString &  str 
)
related

向指定文件写字符串。

自从
build 326
待办事项:
支持非 char 元素字符串。

在文件 File.h263 行定义.

参考 YSLib::UI::f , 以及 YAssert.

template<typename _tChar >
File & operator>> ( File f,
typename std::char_traits< _tChar >::char_type &  c 
)
related

从指定文件读字符。

参数
f文件。
前置条件
bool(f)
自从
build 326

在文件 File.h210 行定义.

参考 YSLib::UI::f , 以及 YAssert.

template<typename _tString >
File & operator>> ( File f,
_tString &  str 
)
related

从指定文件读空白符分隔的字符串。

自从
build 326

在文件 File.h223 行定义.

参考 CHRLib::c, YSLib::UI::f , 以及 YAssert.

类成员变量说明

YSLib::File::bool

在文件 File.h90 行定义.

fp fsize ptrdiff_t int whence const YSLib::File::CheckEOF

在文件 File.h111 行定义.

参考自 NPL::Session::Session().

std::FILE* YSLib::File::fp
private
自从
build 341 默认文件指针。

在文件 File.h47 行定义.

参考自 Close() , 以及 Open().

size_t YSLib::File::fsize
private

文件大小。

自从
build 341

在文件 File.h49 行定义.

参考自 File().

fp fsize ptrdiff_t YSLib::File::offset

在文件 File.h104 行定义.

fp fsize YSLib::File::Seek

在文件 File.h104 行定义.

参考自 File() , 以及 YSLib::TextFile::Rewind().

fp YSLib::File::Size

在文件 File.h93 行定义.

fp YSLib::File::size_t

在文件 File.h93 行定义.


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