2

JDBC/ODBCを介してMicrosoftAccessに正常に接続しています。その後、Microsoft Accessから行を選択するためのクエリを実行し、これらの結果をTXTファイルに書き込みます。すべて問題ありませんが、アクセントを含む文字列がいくつかあり、これらは「?」と表示されます。TXTファイル内。PrintWriter、FileWriter、Outputstreamなど、Javaでファイルを書き込むためのさまざまな形式のメソッドをすでに試しました。これには、これらのメソッドの一部に文字エンコードパラメーター(UTF-8またはISO-8859-1)を追加することも含まれます。これらのキャラクターを正しい方法で表示する方法について、助けが必要です。ありがとう。

4

1 に答える 1

0

以下の行を試してください、

  String OUTPUTFILE = "PATH/TO/FILE/";
  BufferedWriter bf = new BufferedWriter(new OutputStreamWriter(
                      new FileOutputStream(OUTPUTFILE),"UTF8"));

これをコードに追加すると、ファイルへの文字のbf.write('VALUE')書き込みに問題なく使用できるはずです。UTF8また、テキストエディタのエンコーディングをUnicodeまたはに設定してくださいUTF8。そうしないと、穴の処理が機能しなかったように見えて、さらに混乱する可能性があります。

編集:

UTF8txtを読むには

String IPUTFILE = "PATH/TO/File";

BufferedReader in = new BufferedReader(
                    new InputStreamReader(
                    new FileInputStream(INPUTFILE), "UTF8")); 

次に行を読むString str = in.readLine();

于 2013-01-02T23:01:27.850 に答える