UTF-8ファイル(csvです)があります。
このファイルを1行ずつ読み取り、置換してから、別のファイルに1行ずつ書き込む必要があります。
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(fileFix), "ASCII")
);
bw.write(""); //clean current file
BufferedReader br = new BufferedReader(new InputStreamReader(
new FileInputStream(file),"UTF-8")
);
String line;
while ((line = br.readLine()) != null) {
line = line.replace(";", ",");
bw.append(line + "\n");
}
そのような単純な。
問題は、出力ファイル(fileFix)がUTF-8であり、BOM文字を持っていると思うことです。
BOMなしでファイルをプレーンANSIとして書き込むにはどうすればよいですか?
ソフトウェア(weka)でファイルを読んでいるときに発生するエラー
このファイルの最初の行:
notepad++が文字セットがUTF-8であると教えてくれることを考えてみてください。このファイルをプレーンASCII(Windowsのメモ帳を使用)に変換しようとすると、その文字は消えます
解決
あなたが最初の行にいるとき:
line = line.substring(1);
BOM文字を削除します。