Re: [問題] 寫入二進制檔案問題

看板C_Sharp (C#)作者 (麵包小男孩)時間19年前 (2006/10/29 10:57), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
※ 引述《immj (immj)》之銘言: : 各位大大,我想把int寫入二進制檔案。 : 我利用以下程式碼寫入一個值,但出現在二進制檔案內容的數值結果卻是反過來的, : 例如 : 我輸入255,我希望出現的是 00 00 00 FF,出現的卻是 FF 00 00 00 : 輸入256,我希望出現 00 00 01 00,但出現的卻是 00 01 00 00。 : 以下是我的程式碼擷取,請問各位高手該怎麼改呢? : 我的原則是輸出的位數要佔4BYTE。 : FileStream fs = new FileStream(Direct, FileMode.Create); : BinaryWriter sw = new BinaryWriter(fs, Encoding.ASCII); : int a = 255; : sw.Write(a); : sw.Close(); 試試看System.Net裡面IPAddress類別底下 有一個轉換 Network Order與Host Order的Static的方法: int NetworkToHostOrder (int network) return的int是Host Order的integer parameter的int是Network order的 int傳出去前先做HostToNetworkOrder() (一樣是在System.Net裡面IPAddress類別底下的Static方法) 收到以後做NetworkToHostOrder()轉回來 再把轉換過的東西轉成你要的形式寫到你的檔案就應該OK了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 134.208.44.179
文章代碼(AID): #15H1Y9EI (C_Sharp)
討論串 (同標題文章)
文章代碼(AID): #15H1Y9EI (C_Sharp)