4
我試圖讀法文件內容(字符)和檢查那裏ascii值做一些operation.Everything工作正常,包含英文字母,但對於像字符àéèé,我正面臨一些問題。從java/android中的文本文件讀法語單詞問題
例如,如果我的文件內容是français,我會得到一個輸出爲franais。 在這裏,我附上我的代碼,請看看並指導我解決這個問題。
File file = new File("C:\text.txt");
fis = new BufferedInputStream(new FileInputStream(file));
char current;
char org;
while (fis.available() > 0) {
current = (char) fis.read(); // to read character
// from file
int ascii = (int) current; // to get ascii for the
// character
org = (char) (ascii); // to get the actual
// character
if (ascii == 10) {
resultString = resultString.append(",'"
+ strCompCode + "'");
dbhelpher.addDataRecord(resultString.toString());
resultString.setLength(0);
} else if (ascii != 13) { // other than the ascii
// 13, the character are
// appended with string
// builder
resultString.append(org);
}
}
fis.close();
在這裏,我需要閱讀法文字符,因爲它是在文本文件中。 您的建議將不勝感激。提前感謝。
那麼如何將文本文件編碼?看起來你應該使用帶有正確編碼(可能是UTF-8)的'InputStreamReader',並且每次只讀一行。請注意,ASCII不包含任何重音字符。另外,請在將來更加努力地格式化您的源代碼。 –
檢查這個鏈接,是關於閱讀UTF-8文件:http://www.mkyong.com/java/how-to-read-utf-8-encoded-data-from-a-file-java/ – Jure
是的我的用UTF-8編碼的文本文件。 –