我正在通过JDBC / ODBC成功连接到Microsoft Access。之后,我进行查询以从Microsoft Access中选择行,并将这些结果写入TXT文件。一切都很好,但我有一些包含重音的字符串,这些字符串显示为“?”在TXT文件中。我已经尝试了各种形式的方法来在java中编写文件,如PrintWriter,FileWriter,Outputstream等,包括为这些方法添加字符编码参数(UTF-8或ISO-8859-1)。我需要任何帮助才能以正确的方式展示这些角色。感谢。
答案 0 :(得分:0)
尝试以下行,
String OUTPUTFILE = "PATH/TO/FILE/";
BufferedWriter bf = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(OUTPUTFILE),"UTF8"));
将代码添加到代码后,您可以使用bf.write('VALUE')
将UTF8
个字符写入文件。此外,还要确保将文本编辑器编码设置为Unicode
或UTF8
,如果不这样做,可能看起来孔过程不起作用会导致更多混乱。
编辑:
阅读UTF8 txts
String IPUTFILE = "PATH/TO/File";
BufferedReader in = new BufferedReader(
new InputStreamReader(
new FileInputStream(INPUTFILE), "UTF8"));
然后阅读第String str = in.readLine();
行