テキストファイルからデータを読み取るコードを書いています。ファイルからデータを読み込んだ後、UTF8からASCIIに変換する方法を知りたいです。以下は私が書いたコードの一部ですが、変換を行う方法を見つける必要があります。私が以前の質問で言ったように、私はJavaにはとても新しいので、私に手を差し伸べてください。UTF8からJavaのASCIIへの変換
public static List<String> readFile(String filename) throws Exception {
String line = null;
List<String> records = new ArrayList<String>();
BufferedReader bufferedReader = new BufferedReader(new FileReader(filename));
while ((line = bufferedReader.readLine()) != null) {
records.add(line.trim());
}
bufferedReader.close();
return records;
}
変更それに:
public static List<String> readFile(String filename) throws Exception {
return Files.readAllLines(Paths.get(filename), StandardCharsets.US_ASCII);
}
は、関連するjava.nioのパッケージをインポートするために覚えているか、あなたのプログラムはあなたにコンパイルエラーを与える
public static List<String> readFile(String filename) throws Exception {
String line = null;
List<String> records = new ArrayList<String>();
BufferedReader bufferedReader = new BufferedReader(new FileReader(filename));
while ((line = bufferedReader.readLine()) != null) {
records.add(line.trim());
}
bufferedReader.close();
return records;
}
UTF8が明確に定義されていません。
はここで完全に動作するプログラムです。変換では、ASCII文字ではないUTF8文字に遭遇した場合、何をしたいですか? – vandale
基本ASCII文字セット、または多くの*拡張* ASCII文字セットの1つを参照していますか?ベースとデータ*を基本ASCIIに格納できるのであれば、Unicodeには同じコードポイント値を持つすべての基本ASCII文字が含まれるため、変換は不要です。 – Andreas
はい、私の元のファイルには私のような文字があります:Šaltenis、Simonas –