使用ifstream的等效运费
Equivalent fread using ifstream
我想使用ifstream
来读取像fread
这样的n
数据块,有没有办法使用ifstream
在C++中实现类似的功能?
我试着加载TGA文件,它的标题看起来像:
struct TgaHeader {
char identSize;
char colorMapType;
char imageType;
unsigned short colorMapStart;
unsigned short colorMapLength;
unsigned char colorMapBits;
unsigned short xstart;
unsigned short ystart;
unsigned short width;
unsigned short height;
char bits;
char descriptor;
};
使用fread
读取标头:
TgaHeader tgaHeader;
fread( &tgaHeader, 18/* sizeof( TgaHeader )*/, 1, pFile );
现在我想将它与ifstream
一起使用,但没有等效的函数可用。ifstream
仅提供read
功能,该功能允许读取n
大小的指针。那么,我怎么能说使用fstream
读取x
字节的n
报头呢?
谢谢你,
正如问题下面的注释所说,您希望使用basic_istream<>::read()
和size * count
,而不是fread()
的两个单独的参数。
相关文章:
- 如何使用 ifstream 检查文件中变量的类型?
- 尝试使用 Ifstream 打开.txt文件时C++问题
- 使用多个ifstream作为ifstream的向量
- Visual Studio 2017中使用ifstream时,Release和Debug的输出不同
- 使用ifstream时,被调用文件中的数据不会打印
- 我如何使用ifstream使用以下类似fread()的语句?
- C++ : 如何在使用 getline() 和 ifstream 对象从文件中读取一行时跳过第一个空格?
- 使用 c++ ifstream 读取文本文件问题
- 是什么让使用 ifstream 时检测到堆栈粉碎?
- 尝试使用 ifstream 读取数据后显示不正确的数字
- 如何使用 istream_iterator 从 ifstream 中读取带有空格的字符串?
- 关于使用ifstream在C 中确定文件是否存在的问题
- 使用ifstream从DAT文件加载数据
- 使用 getline 和 FILE 而不是 ifstream 的 c++ 读取文件
- std::ifstream,使用已删除功能
- ifstream读取二进制文件在发行模式下工作,但在调试模式下不使用
- 使用ifstream使用getline缺少数据行
- ifstream 使用 g++ 出错,但使用 Visual Studio 编译
- Std::ifstream使用临时Std::string()作为构造函数参数时行为怪异
- 如何处理随机访问ifstream使用?-位置/偏移量/尺寸问题