我正在嘗試將大量數據寫入文件。有人建議我應該使用二進制模式,但我已經在文本模式下完成了。在速度方面使用二進制文件有什麼不同嗎?使用二進制模式有什麼優點或缺點?在寫入c中的文件時,二進制文本模式與文本模式之間是否存在性能差異?
0
A
回答
1
在二進制模式下,數據被寫入不變。在文本模式下,可以有一些額外的代碼來處理'\n'
和'\r'
(在DOS/Windows中'\n'
擴展爲'\r\n'
)。無論如何,磁盤速度比RAM的速度低幾個數量級,我不會太在意這裏的模式,除非當然,這兩種模式下的緩存是不同的。
3
文本模式確實換行符翻譯,使得
fprintf(myfile, "\n");
可以生成一個字節(0X0A,換行)上類Unix系統,和兩個(0X0D,0X0A,回車隨後換行)視窗。這需要時間,因爲這意味着每個字節都必須被檢查。如果這與I/O系統的速度相比真的很重要,當然是高度可變的。
相關問題
- 1. 以二進制模式與文本模式運行文件 - 性能問題
- 2. 如何在二進制模式下將換行符寫入文本文件
- 3. 在Clisp中以二進制模式寫入/讀取文件
- 4. C以二進制模式讀取/寫入文件
- 5. AVRO模式是否也在二進制文件中被編碼?
- 6. 是否有可能在文件之間進行智能差異?
- 7. 如何確定文件是否以二進制或文本模式打開?
- 8. Java讀取串行端口在文本模式/二進制模式之間切換在運行時
- 9. MD5二進制模式和文本模式有什麼區別?
- 10. Swift - 在將文件的起始位置與中間位置進行導入時是否存在性能差異?
- 11. C以二進制模式讀取文件並寫入輸出文件
- 12. JavaScript的模式 - 在外觀的差異與對象文本模式
- 13. 二進制和XML序列化之間是否存在性能差異?
- 14. 二進制文件的智能差異
- 15. 將文本模式屏幕寫入文本文件。 (MASM)
- 16. 打開二進制文件的模式
- 17. 用C++編寫文本/二進制文件最優雅的方式是什麼?
- 18. 寫入二進制文件在C++
- 19. 不正確的文本數據時,出口爲二進制 - 文本模式
- 20. 以二進制模式寫入文件不起作用
- 21. 以二進制模式將utf16寫入文件
- 22. Boost序列化性能:文本與二進制格式
- 23. 版本和調試模式之間編譯時間的差異
- 24. PERL CGI:同時使用二進制和文本模式的文件句柄
- 25. 將二進制輸入流轉換爲文本模式
- 26. 替換文本之間的模式
- 27. c#從文本框寫入二進制文件
- 28. 在二進制模式下的Python 3文件輸入更改
- 29. 在二進制文件中查找模式/在二進制文件中查找匹配(C)
- 30. 二進制模式+格式化文本操作或文本模式+二進制數據操作 - 是否有意義?