Windows 용 편집기 (또는 Word)로 작성된 표준 텍스트 파일을 Android 장치에 ANSI 형식으로 저장했습니다. 이 파일을 열어서 Android 기기에 표시하면 독일어 Umlaute äÄöÖüüß를 제외한 모든 문자가 올바르게 표시됩니다. 이 문자 대신 검정색 다이아몬드 안에 흰색 물음표가 표시됩니다. (나는 그들을 remoteViews.setTextViewText(...
을 사용하는 홈 화면 위젯에 표시한다)독일어 (유럽) 문자로 ansi-coded 파일을 읽고 올바르게 표시하는 방법
나는 몇 시간 동안 인터넷 검색을했고, UTF-8 인코딩 등을 사용할 때 많은 힌트를 발견했다. 그러나 파일을 UTF-8이나 ANSI가 아닌 다른 형식으로 저장할 때 나는 예외가 발생하고 파일을 전혀 읽을 수 없습니다. 안드로이드 편집기를 사용하면 파일 인코딩이 ANSI와 UTF-8 모두에서 올바른 것으로 나타납니다.
내 프로그램이 너무 커서 여기에 복사 할 수 없으므로 관련 부분을 추출하여 아래에 넣으십시오. 도와주세요!
public class Test {
static void readFile() {
File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath(), "birthday.txt");
if (file.exists())
{
try {
FileReader fileReader = new FileReader(file);
BufferedReader br = new BufferedReader(fileReader);
//BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(directory+"birthday.txt"), "windows-1252"));
String lineOfText;
while ((lineOfText = br.readLine()) != null) {
//Output lineOfText via remoteViews.setTextViewText(WidgetOutput.getRef(linecounter).getIdWhat(), lineOfText);
}
br.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
UTF-8 파일을 읽을 때 어떤 예외가 있습니까? –
독자와 함께 인코딩 매개 변수를 추가 할 수 있습니다. 시험해보십시오. – greenapps