0
我有一個客戶端上傳一個vcf文件,並且我在服務器端獲取這個文件並讀取它的內容並將它們保存到一個txt文件中。但是當我嘗試閱讀時會出現字符錯誤,如果土耳其字符看起來像「?」。我讀代碼是在這裏:字符看起來像「?」在讀取上傳文件的內容
FileItemStream item = null;
ServletFileUpload upload = new ServletFileUpload();
FileItemIterator iterator = upload.getItemIterator(request);
String encoding = null;
while (iterator.hasNext()) {
item = iterator.next();
if ("fileUpload".equals(item.getFieldName())) {
InputStreamReader isr = new InputStreamReader(item.openStream(), "UTF-8");
String str = "";
String temp="";
BufferedReader br = new BufferedReader(isr);
while((temp=br.readLine()) != null){
str +=temp;
}
br.close();
File f = new File("C:/sedat.txt");
BufferedWriter buf = new BufferedWriter(new FileWriter(f));
buf.write(str);
buf.close();
}
你的輸入文件是否真的在UTF-8中? – 2011-12-27 13:05:05
是的,它是在UTF-8。 – 2011-12-27 13:11:02
然後sedat.txt中的編碼是什麼?我沒有看到編碼規範。 – 2011-12-27 13:14:16