ofstream寫出的文件打不開或亂碼的解決

最近在搗鼓從郵箱拉取數據並下載郵件附件的內容到本地的活兒,記錄一下遇到的問題。

獲取到附件數據後,最開始將數據寫入本地文件夾的代碼如下:


運行完成後查看寫好的excel文件,顯示文件已損壞


通過beyond compare打開此文件和源文件比較:


原來新寫的文件比源文件多了很多‘0D’,原來ostream寫文件如果沒有標記ios::binary方式寫入,碰到換行符(0x0A),編譯器會自動轉換爲回車換行符(0x0D 0x0A)然後再寫入文件,改成以二進制的方式寫入後就OK了。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章