2014-09-23 391 views
1

我必須編寫一個大號的STL文件。三角形(約2百萬)。目前我正在以ascii格式編寫和閱讀,這需要花費太多時間。我的問題是:「以二進制格式進行寫入和讀取是否會節省大量時間?」謝謝哪種格式的STL文件讀取速度更快:ascii還是binary?

+4

你爲什麼不嘗試呢?不應該那麼辛苦,或者花費很長時間來測試兩種變體。 – 2014-09-23 07:07:46

+0

是的,可能取決於你如何實現它。 ascii版本不應該那麼糟糕,要麼取決於你如何構建/寫入數據。 – 2014-09-23 07:08:04

+0

是的,我正在嘗試。將更新。謝謝 – Vicky 2014-09-23 07:21:07

回答

1

幾乎肯定會。如果您將整數存儲在文本文件中作爲可讀數字,那麼它們都必須轉換爲內部4字節表示。如果您使用的二進制文件,你只轉儲每個數字爲4個字節(我假設4個字節的整數,你可以使用不同類型)

未經測試的字符串的二進制表示顯然會更快這個不斷轉換。唯一的問題是速度有多快。

+0

它出來要快1.5-2倍。謝謝 – Vicky 2014-09-29 09:44:15

+0

我們曾經將序列化的對象數據存儲爲XML。將其更改爲使用二進制表示法可以節省20%的時間 - 這是相當可觀的。編寫像計算機一樣工作的代碼,當性能很重要時,就不需要那麼方便了! – gbjbaanb 2014-09-29 09:47:10