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\"");
}
注意事项
相关函数
- fopen: 打开文件
- fclose: 关闭文件
- ftemp: 创建临时文件流
- fremove: 删除文件
- fwrite: 写入文件
- fread: 读取文件
- fputchar: 写入单个字符到文件
- fgetchar: 从文件读取单个字符
- fblockwrite: 写入数据块到文件
- fseek: 定位文件指针位置
- flength: 获取文件长度
- fexist: 检查文件是否存在
- fmatch: 检查文件名模式匹配
- ftell: 获取当前文件指针位置
- fflush: 刷新文件缓冲区到磁盘
- fstat: 获取文件大小和时间戳
- frename: 重命名文件
- fcopy: 复制文件
- filecrc: 计算文件 32 位 CRC 校验值
- diskfree: 获取磁盘剩余空间
- fattrib: 设置文件属性
- fcreatedir: 创建目录