c 中讀取二進位制結構體檔案

2021-08-30 19:06:43 字數 1128 閱讀 4849

檔案結構體中有 :

unsigned short int size;

char id;

char type;

short int ids;

unsigned short int date;

採用二進位制檔案方式乙個位元組乙個位元組讀,看看這樣成不成

///

/// 讀取二進位制檔案

///

/// 檔名

public void readmybinaryfile(string filename) */

int ifilelength = filestream.length;//檔案長度

int istructlength = 20;//結構體的位元組長度

int itimes = ifilelength / istructlength;//共有多少個位元組

datapacket tmp;

byte bytmp = new byte[2];

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

tmp.head[j] = bitconverter.touint16(bytmp, 0);

}//讀大小

if (filestream.read(bytmp, 0, 2) != 2)

tmp.size= bitconverter.touint16(bytmp, 0);

//讀id

tmp.id = filestream.readbyte();

//讀型別

tmp.type = filestream.readbyte();

//讀ids

if (filestream.read(bytmp, 0, 2) != 2)

tmp.ids = bitconverter.toint16(bytmp, 0);

//讀日期

if (filestream.read(bytmp, 0, 2) != 2)

tmp.date = bitconverter.touint16(bytmp, 0);

/*.........對讀出變數進行處理*/}

/*.....後續處理

*/filestream.close();

}

二進位制檔案中讀寫結構體

老師給我們分布裡乙個作業,讓我們定義乙個怪物的結構體,輸入你想建立的數字就可以建立出相應個數的怪物。然後再輸入每個怪物的資訊並儲存到乙個文字檔案裡面,以供以後讀取。這裡我定義了乙個結構體,還進行了二進位制檔案讀寫和儲存fread,fwrite 這裡只是乙個createmonster 函式,在main...

用 C 讀取二進位制檔案

當想到所有檔案都轉換為 xml時,確實是一件好事。但是,這並非事實。仍舊還有大量的檔案格式不是xml,甚至也不是ascii。二進位制檔案仍然在網路中傳播,儲存在磁碟上,在應用程式之間傳遞。相比之下,在處理這些問題方面,它們比文字檔案顯得更有效率些。在 c 和 c 中,讀取二進位制檔案還是很容易的。除...

二進位制讀取檔案內容 C

filestream tempstream new filestream filename,filemode.open binaryreader tempreader new binaryreader tempstream,system.text.encoding.default char cc t...