プロが教える店舗&オフィスのセキュリティ対策術

失礼いたします。
以前のログを見てエンコードを設定してみたのですが、出力が文字化けします。ローカルファイルを読み込んでコンソール出力しているだけなのですが・・・。
分かる方、よろしくお願いします。
-------------------ソースはここから
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
// import java.io.FileReader; FileReaderからInputStreamReaderに変更済み
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class ReadCSV {

public static void main(String[] args) {
try {
File csv = new File("C:\\AP.csv");
// BufferedReader br = new BufferedReader(new FileReader(csv));
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(csv),"EUC_JP"));
// BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(csv),"MS932"));

while (br.ready()) {
String line = br.readLine();
StringTokenizer st = new StringTokenizer(line, ",");
while (st.hasMoreTokens()) {
System.out.print(st.nextToken() + "\t");
}
System.out.println();
}
br.close();

} catch (FileNotFoundException e) {
キャッチ処理
}

A 回答 (1件)

>BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(csv),"EUC_JP"));



テキストファイルを読み込む際に、エンコードをEUC_JPにしていますが、
作成されたCSVファイルのエンコードは何でしょうか?
Shift_JISとかになってませんか?
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
問題となっていたのは別の部分で、
読み込むためのCSVファイルを作る際、エクセルファイルの拡張子を.csv
に変更したためはじめから文字化けしていました。
逆なら変更可能なのですが・・
BufferedReader br = new BufferedReader(new FileReader(csv));
または指定なしと同じ
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(csv),"MS932"));
にすることでうまくいっていました。
EUC_JPだけは駄目のようです。
ご足労をおかけました。m(__)m

お礼日時:2007/03/27 10:14

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!