[問題] 寫16進位檔的問題 (midi)

看板C_and_CPP (C/C++)作者 (KenMin)時間14年前 (2012/02/21 18:57), 編輯推噓0(008)
留言8則, 3人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Dev C++ 問題(Question): 如何寫16進位資料 除了用fwrite之外還有其他好的作法嗎? 預期的正確結果(Expected Output): 4D 54 68 64 錯誤結果(Wrong Output): 用UltraEdit開起來看是文字的樣子: MThd 不是16位元字: 4D 54 68 64 程式碼(Code):(請善用置底文網頁, 記得排版) #include <stdio.h> int main() { FILE *cfPtr; unsigned char b[] = {0x4d, 0x54, 0x68, 0x64}; cfPtr = fopen("test.mid", "wb"); fwrite(b, sizeof(b), 1, cfPtr); fclose(cfPtr); getchar(); return 0; } 謝謝.. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.249.6.66

02/21 19:03, , 1F
你有設定顯示為16bit嗎?
02/21 19:03, 1F

02/21 19:09, , 2F
娃 因為我開midi檔來看的時候它就長成16進位的樣子
02/21 19:09, 2F

02/21 19:10, , 3F
不過開這個test.mid的時候就顯示一般字
02/21 19:10, 3F

02/21 19:12, , 4F
檔案在電腦內存的都是一樣的,只是解讀方式不同
02/21 19:12, 4F

02/21 19:15, , 5F
啊找到了 這的確就是寫16進位的方式 謝謝(自問自答)
02/21 19:15, 5F

02/21 19:15, , 6F
所以問題是原先沒改成16進制顯示?
02/21 19:15, 6F

02/21 19:18, , 7F
UltraEdit的16進位顯示功能打開就行了= =a
02/21 19:18, 7F
※ 編輯: john110290 來自: 111.249.6.66 (02/21 19:18)

02/21 19:38, , 8F
fstream HEX(逃
02/21 19:38, 8F
文章代碼(AID): #1FGtYKNP (C_and_CPP)
文章代碼(AID): #1FGtYKNP (C_and_CPP)