windows API讀寫二進位檔案

來源:互聯網
上載者:User

標籤:

其實,如果你學習過C語言的話,直接用 stdio.h

中函數是最簡單的,也就是使用 fopen( "xxxx.xxx", "rb" ); 然後再調用 fread/fwrite; 關閉時調用 fclose 就可以了。

如果使用 Windows Native API 中的 CreateFile, 是不需要區分什麼二進位不二進位的,只要此函數的傳回值不是 INVALID_HANDLE_VALUE, 就可以繼續使用 ReadFile/WriteFile 來進行讀寫,最後再用 CloseHandle 來關閉。這在 MSDN 的 "Platform SDK: Files and I/O" 中直接有例子。

再深入一點說,stdio.h 中 fopen 時所謂的 "rb" 或 "wb" 的 "b" 即二進位模式,與文字模式("t")的區別僅僅在於對於是否解析 0x0D & 0x0A (斷行符號和分行符號)而已,這主要表現在 fgets / fscanf 之類要對字串進行操作的函數上,事實上即使用 "b" 方式調用 fopen 後 fgets/fscanf 等函數也是可用的。如果不涉及字串,"b" 和 "t" 沒有多大的差別。

什麼是二進位:

通用二進位程式就是一個包,Bundle,又譯束,是Mac OS X系統中一種應用程式格式,實際上是特殊的檔案夾可以直接雙擊來運行,檔案夾中包含主程式、各種資源、文檔和協助檔案等,使得Mac OS X中的軟體一般無需安裝,複製到硬碟上即可運行,且易於本地化和國際化。Carbon和Cocoa是兩種Mac平台的應用程式架構(類似於MFC、VCL、GTK+、Qt等),前者能相容Mac OS 8-9的API,因此能夠產生可以運行於Mac OS Classic和OS X的應用程式,後者則只能產生OS X程式,但可能能夠運行於IBM PowerPC RISC晶片和Intel x86 CISC晶片兩種構架的Mac OS X系統中,即Universal Binary ——通用二進位程式。]?

windows API讀寫二進位檔案

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.