當讀取一個文本,我讀到這些文字,在打印時安慰它輸出空白或:什麼是 xHEX字符,併爲他們提供了一張桌子?
['\x80', '\xc3', '\x94', '\x99', '\x98','\x9d', '\x9c', '\xa9', '\xa6', '\xe2']
這些是什麼\ xHEX角色?有鏈接到表來查找這些字符?
解決:
它不是一個文本文件ascii
,這是一個unicode utf8
文件。這就是爲什麼我無法弄清楚角色的原因。
對於Java:
import java.io.*
File infile = new File('\home\foo\bar.txt');
BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(infile), "UTF8"));
while ((str = in.readLine()) != null) {
System.out.println(str);
}
如果system.out.println
抱怨嘗試:
PrintStream out = new PrintStream(System.out, true, "UTF-8");
out.println(str);
對於Python,簡單地說:
import codecs
infile = '\home\foo\bar.txt'
reader = codecs.open(infile,'r','urf8')
for l in reader:
print ln
看一看[編碼](http://www.cs.tut.fi/~jkorpela/chars/index.html) – rene
有你甚至試圖自己做一些研究?一個簡單的谷歌任何這些字符會告訴你他們是'unicode',然後它只是一個搜索「unicode轉換圖表」 –
當我嘗試打印它爲'unicode',它給出''utf8'編解碼器無法解碼位置0處的字節0x80 ... ... – alvas