問題敘述
今天寫java作業的時候遇到了一個靈異事件,沒錯,就是靈異事件,明明兩個字符串(中文)是完全一樣的,在控制檯輸出也是一樣的,可調用equals方法就是返回false
不過值得一提的是,兩個字符串是從兩個不同的文件讀出來的,但是字符串編碼都一樣,都是“utf-8”,
那麼問題到底在哪呢?
問題原因
後來分析,問題原因可能是其中一個文件的字符串是那個文件的第一行,另一個字符串是中間的一行,那個第一行字符串因爲位於文件首部,所以第一個字符可能帶有“不乾淨的東西”
問題解決
在文件首部隨便添加一個字符佔位,然後在讀文件的時候再把佔位字符去掉,竟然奇蹟般的可以了