opencv xml文件存儲double類型時顯示科學計數法
例子:
本來想存儲0.70這個double值到xml文件中,結果實際存入的是6.9999998807907104e-01,這個值的可讀性就很差了,如果想手動改xml文件中這個值也不太現實了。
double dValue = value;
測試結果:
value爲60時,顯示60.(注意後面的.)
value爲60.0時,還是顯示60.
val爲60.1時,顯示科學計數法
value爲1.0時,顯示1.
val爲1.01時,顯示科學計數法
從測試結果來看,只要小數點後面有非零值時就會顯示科學計數法。
想法:存的時候先把double轉換爲string類型,讀的時候再利用stod轉回double這樣做的問題,用to_string(dValue)存到xml時,精度顯示是6位,會多出",也就是\",然後你直接stod的話是會段錯誤的,因爲\"轉double會出錯,當時是stod(str.erase(0,1)),也就是把\"去掉。
最後老大否決了我轉字符串存儲的想法,說這樣會存在風險,萬一xml文件被改動,沒有\"了,那麼erase就是錯誤的
各位有好想法的請評論區交流下。