我有一個Java應用程序,從一堆文本文件(約值50克)讀取。每個文件的大小從5kb到35mb。這些文件本身是從另一個Java應用程序創建的,該應用程序按需運行,但未在一週內運行。該文件使用多個分隔符,如SSD損壞可能會更改txt文件中的字符嗎?
| ; ,
我的應用程序已經運行良好,但最近開始拋出一個數字格式的懷疑錯誤。經審查我看到逗號的一個已經被翻轉到$
0.43916,22970.43081,6.76182 $ 527640691.38786,| 10,
我的問題是這樣的。這可能是因爲驅動器損壞而發生這種「翻轉」?看起來有點牽強,整個文件中只有一個字符會改變。文件上的時間戳驗證它不是由另一個程序「意外」修改的。
我真的在撓撓我的腦袋。
生成文件的應用程序更有可能存在導致將無效值寫入文件的錯誤,尤其是因爲它是單個字符被更改的。驅動器損壞很可能會影響更多的數據。 (這真的不是一個編程問題,它更像是一個操作系統/硬件問題,在這裏並不是真正的主題。) –
由於硬件或編譯器錯誤(或從宇宙射線的位翻轉)很少有人認爲他們應該幾乎不會因爲問題而受到指責。我已經開發了十多年的企業級Java代碼,並且從來沒有遇到過這些問題之一成爲錯誤的根源(留出XML處理器問題:-))。然後再一次,這是紡金屬而不是硅。 –