二進位制檔案 讀進vector

2021-08-07 19:41:28 字數 605 閱讀 6184

我的實現:

#include

#include

using

namespace

std;

int main()

size = in.tellg();

size = size -4;//我需要跳過4個位元組,個人需要。

buffer.resize(size);

in.seekg (4, ios::beg); //jump to begin pos + 偏移量

in.read (reinterpret_cast

(&buffer[0]),buffer.size()); //注意,我採用的是&buffer[0],知乎上有人採用buffer.data(),這是c++ 11才有的特性

in.close();

for(int i=0;i<10;i++)

總結:

in.read (reinterpret_cast(&buffer[0]),buffer.size())

我採用的是&buffer[0],知乎上有人採用buffer.data(),這是c++ 11才有的特性,參見

二進位制檔案

本質上是文字檔案是把檔案資訊先轉化成以字元編碼的ascii碼,再儲存ascii的二進位制 而二進位制檔案是直接把檔案資訊編碼成二進位制儲存。因此在讀取的時候要考慮記憶體中二進位制 應該怎麼樣解釋。二進位制檔案的讀取是是要告訴元素的型別 編碼方式 文字檔案則預設為char型別。文字檔案是一種特殊的二進...

二進位制檔案

二進位制檔案 也叫型別檔案 二進位制檔案是由一批同一型別的資料組成的乙個資料序列,就是說乙個具體的二進位制檔案只能存放同一種型別的資料。type tmember record name string 10 email string 20 posts longint end var members a...

二進位制檔案

二進位制檔案 也叫型別檔案 二進位制檔案是由一批同一型別的資料組成的乙個資料序列,就是說乙個具體的二進位制檔案只能存放同一種型別的資料。type tmember record name string 10 email string 20 posts longint end var members a...