跳到主要内容

fblockread

注意

这个$函数以小写字母开头。

描述

该函数允许从文件中读取原始数据块(不处理编码和行终止符)。

名称描述
File:handle通过 fopen()打开的文件句柄
buffer存储读取数据的缓冲区
size = sizeof (buffer)要读取的数据单元数量(默认缓冲区大小)

返回值

读取的数据单元数量,文件末尾时返回 0

示例

// 定义枚举结构
enum _:some_enum
{
some_data1,
some_data2[20],
Float:some_data3
}

// 声明数据容器
new some_data[some_enum];

// ...

// 以只读模式打开二进制文件
new File:handle = fopen("file.bin", io_read);

// 声明文件长度变量
new file_len;

// 验证文件是否成功打开
if (handle)
{
// 获取文件总长度
file_len = flength(handle);

// 校验文件尺寸与数据结构匹配
if (file_len == (some_enum*4))
{
// 执行块读取操作
fblockread(handle, some_data);
}
else
{
print("文件\"file.bin\"与数据结构不兼容");
}

// 关闭文件句柄
fclose(handle);
}
else
{
print("无法打开文件\"file.bin\"");
}

注意事项

注意

使用无效句柄将导致服务器崩溃!请通过fopenftemp获取有效句柄

相关函数