如何用C語言對檔案進行int數轉byte的操作?

時間 2021-06-09 00:26:57

1樓:筱傑

檔案A中存在N個文字型別的數字,要將這些數字轉為二進位制位元組儲存到檔案B。

檔案A中存在N個二進位制的int數值,要將這些數值轉為文字型別的位元組儲存到檔案B。

檔案A中存在N個文字型別的數字,要將這些數字轉為文字型別的位元組儲存到檔案B。

檔案A中存在N個二進位制的int數值,要將這些數值轉為二進位制位元組儲存到檔案B。

......

檔案A可能存在情況:

N個文字格式數值,用X符號隔開:如 12 34 56 78

N個二進位制數值

預期結果(檔案B)可能存在情況:

十進位制文字格式的位元組,以符號X隔開:如 255 255 255 255

十六進製制文字格式的位元組,以符號X隔開:如 0xFF 0xFF 0xFF 0xFF

十六進製制文字格式的位元組,不帶0x,以符號X隔開:如 FF FF FF FF

十六進製制文字格式的位元組,不帶0x小寫格式,以符號X隔開:如ff ff ff ff

二進位制格式儲存所有位元組

以上情況進行組合有很多種方法,現在你知道為什麼會被舉報了嗎?

麻煩先學會如何提問!

十進位制文字文字到二進位制位元組文字檔案

2樓:葉芝秋

其實我不太清楚你想問的問題,但是看見你已經被別人指責了,我也就不指責你了。

在火車上無聊,我就按我的理解回答一下你的問題吧。

乙個文字檔案,裡面有一些整數。比如檔案file.txt,其中內容為

123456

現在我們想要把這個檔案轉換成乙個二進位制位元組檔案,對於上面的檔案,轉換之後是

00000000000000000000000001111011

00001010

00000000000000000000000111001000

這是乙個二進位制檔案,用文字編輯器(比如Sublime Text 3)開啟,會以十六進製制(每四個二進位制位轉換到乙個十六進製制位)顯示如下

0000007B

0A000001C8

要想做這樣乙個轉換,那麼你首先要做的就是用scanf函式把所有的整數讀到乙個整數陣列裡面,然後再以二進位制寫的模式開啟乙個新檔案,用write函式將這個整數陣列從記憶體寫到磁碟。記住,是寫,也就是儲存,不是列印。列印之後就是字元了。

至於這些函式怎麼調怎麼用,這是C語言的基礎,是需要你自己去學,去搜尋引擎查詢的。

3樓:大貓

先讀取在開啟乙個以二進位制儲存的檔案寫入關閉即可!首先fopen(原檔案,r),讀取其內容存到char,然後fopen(新檔案,wb),write(char*),fclose即可

C語言如何將int資料放到double小數部分?

醉臥沙場 不明白為什麼這種也要出來 拜神 給你兩種方法,拿去交作業吧 有心就自己弄明白了再交,要是弄不明白就趁早轉乙個合適的專業 程式 mytest.c include include intmain int argc char argv 編譯,測試執行 gcc o mytest mytest.c ...

如何用C語言程式設計這個題?

tearing include intmain 霍工 include int main int salary,i,n 0,bill 5 clrscr printf Input salary scanf d salary for i 0 i 5 i n salary bill i salary sal...

如何用C語言和windows api實現乙個基本的ssl協議?(參考資料已備齊)

魯哈花 理由不成立。openssl在Windows上的替代品是有的,但是他們解決的問題是一致的,也就是說包含的東西是同一類,僅僅是換個口味而已。 李振宇 爬網頁和openssl沒半毛錢關係,openssl用於ssl握手,爬網頁爬的是http內容 不知道windows下面有沒有wget,好像可以裝cy...