是的,C++中的istream類可以用來讀取二進制文件??梢允褂胷ead()方法從二進制文件中讀取數據,并將其存儲在一個指定的緩沖區中。讀取二進制文件時,需要使用ios::binary標志打開文件流,以確保以二進制模式進行讀取。以下是一個示例代碼:
#include <iostream>
#include <fstream>
int main() {
std::ifstream file("binary_file.bin", std::ios::binary);
if (file.is_open()) {
// 讀取文件內容
char buffer[100];
file.read(buffer, sizeof(buffer));
// 打印讀取的數據
for (int i = 0; i < file.gcount(); i++) {
std::cout << buffer[i];
}
file.close();
} else {
std::cout << "無法打開文件" << std::endl;
}
return 0;
}
在上面的示例中,我們首先打開一個名為“binary_file.bin”的二進制文件流,然后使用read()方法讀取文件內容,并將其存儲在名為“buffer”的緩沖區中。最后,我們通過循環遍歷緩沖區中的數據,并將其打印出來。