我想在java程序中读取如下字符,如下字符,我放在一个TXT文件中,但我发现,无论怎么试,都发现无法顺利读入,这怎么搞?
哪里要注意?
¡=i
¿=?
΄='
÷=/
¢=c
£=$
¥=$
©=C
¼=1/4
½=1/2
¾=3/4
ª=a
á=a
à=a
Ä=A
ä=a
ǎ=a
ă=a
Ā=A
ā=a
Ã=A
ã=a
Å=A
å=a
Ą=A
ą=a
Ấ=A
ấ=a
Ầ=A
ầ=a
Ắ=A
ắ=a
ằ=a
Ǻ=A
ǻ=a
Ẫ=A
ẫ=a
Ẵ=A
ẵ=a
Ả=A
ả=a
ẩ=a
Ẳ=A
ẳ=a
ạ=a
Ậ=A
ậ=a
Ặ=A
ặ=a
Ć=C
ć=c
ċ=c
Ĉ=C
ĉ=c
Č=C
č=c
Ç=C
ç=c
Ď=D
ď=d
Đ=D
đ=d
Ð=D
ð=o
É=E
é=e
È=E
è=e
Ė=E
ė=e
Ë=E
ë=e
ě=e
Ĕ=E
ĕ=e
ē=e
Ẽ=E
ẽ=e
Ę=E
ę=e
Ế=E
ế=e
ề=e
Ễ=E
ễ=e
Ẻ=E
ẻ=e
Ể=E
ể=e
ẹ=e
Ệ=E
ệ=e
Ə=e
ƒ=f
Ġ=G
ġ=g
Ĝ=G
ĝ=g
Ğ=G
ğ=g
ģ=g
Ĥ=H
ĥ=h
Ħ=h
ħ=h
I=I
Í=I
í=i
Ì=I
ì=i
İ=I
Î=I
î=i
Ï=I
ï=i
ǐ=i
Ĭ=I
ĭ=i
ī=i
Ĩ=I
ĩ=i
Į=I
į=i
ỉ=i
Ị=I
ị=I
ij=i
Ĵ=J
ĵ=J
ĸ=k
Ķ=K
ķ=k
Ĺ=L
ŀ=I
Ŀ=L
Ľ=L
ľ=l
Ļ=l
ļ=l
Ł=L
Ń=n
ń=n
Ň=N
ň=n
Ñ=N
ñ=n
Ņ=N
ņ=n
ʼn=n
ŋ=n
Ó=O
ó=o
Ô=O
ô=o
Ö=O
ö=o
ǒ=o
Ŏ=O
ŏ=o
Ō=O
ō=o
Õ=O
õ=o
Ő=O
ő=o
ố=o
Ồ=O
ồ=o
Ø=O
ø=o
Ỗ=O
ỗ=o
ǿ=o
Ỏ=O
ỏ=o
ơ=o
Ổ=O
ổ=o
Ọ=O
ọ=o
Ớ=O
ớ=o
Ờ=O
ờ=o
ỡ=o
ộ=o
Ở=O
ở=o
Ợ=O
ợ=o
Ŕ=R
ŕ=r
Ř=R
ř=t
Ŗ=R
ŗ=r
ś=s
Ŝ=S
ŝ=s
Š=S
š=s
Ş=S
ş=s
ß=B
ſ=J
Ť=T
ť=t
ţ=t
Þ=p
þ=p
Ŧ=T
ŧ=t
Ù=U
ù=u
Û=U
û=u
Ü=U
ü=u
ǔ=u
Ŭ=U
ŭ=u
ū=u
Ũ=U
ũ=u
Ů=U
ů=u
ų=u
Ű=U
ű=u
ǘ=u
ǜ=u
ǚ=u
Ủ=U
ủ=u
Ư=U
ư=u
Ụ=U
ụ=u
ứ=u
Ừ=U
ừ=u
Ữ=U
ữ=u
Ử=U
ử=u
ự=u
Ẃ=W
ẃ=w
Ẁ=W
ẁ=w
Ŵ=W
ŵ=w
Ẅ=W
ẅ=w
Ý=Y
ý=y
Ỳ=Y
ỳ=y
Ŷ=Y
ŷ=y
ÿ=y
Ÿ=Y
ỹ=y
Ỷ=Y
ỷ=y
Ỵ=Y
ỵ=y
Ź=Z
Ż=Z
ż=z
Ž=Z
ž=z
α=a
ά=a
Ά=A
β=B
δ=o
Έ=E
Ή=H
ι=l
ί=i
ϊ=i
Ϊ=I
κ=k
μ=u
Ό=O
ρ=p
υ=v
ύ=v
Ύ=Y
ϋ=v
ΰ=v
χ=x
ω=w
Ё=E
哪里要注意?
¡=i
¿=?
΄='
÷=/
¢=c
£=$
¥=$
©=C
¼=1/4
½=1/2
¾=3/4
ª=a
á=a
à=a
Ä=A
ä=a
ǎ=a
ă=a
Ā=A
ā=a
Ã=A
ã=a
Å=A
å=a
Ą=A
ą=a
Ấ=A
ấ=a
Ầ=A
ầ=a
Ắ=A
ắ=a
ằ=a
Ǻ=A
ǻ=a
Ẫ=A
ẫ=a
Ẵ=A
ẵ=a
Ả=A
ả=a
ẩ=a
Ẳ=A
ẳ=a
ạ=a
Ậ=A
ậ=a
Ặ=A
ặ=a
Ć=C
ć=c
ċ=c
Ĉ=C
ĉ=c
Č=C
č=c
Ç=C
ç=c
Ď=D
ď=d
Đ=D
đ=d
Ð=D
ð=o
É=E
é=e
È=E
è=e
Ė=E
ė=e
Ë=E
ë=e
ě=e
Ĕ=E
ĕ=e
ē=e
Ẽ=E
ẽ=e
Ę=E
ę=e
Ế=E
ế=e
ề=e
Ễ=E
ễ=e
Ẻ=E
ẻ=e
Ể=E
ể=e
ẹ=e
Ệ=E
ệ=e
Ə=e
ƒ=f
Ġ=G
ġ=g
Ĝ=G
ĝ=g
Ğ=G
ğ=g
ģ=g
Ĥ=H
ĥ=h
Ħ=h
ħ=h
I=I
Í=I
í=i
Ì=I
ì=i
İ=I
Î=I
î=i
Ï=I
ï=i
ǐ=i
Ĭ=I
ĭ=i
ī=i
Ĩ=I
ĩ=i
Į=I
į=i
ỉ=i
Ị=I
ị=I
ij=i
Ĵ=J
ĵ=J
ĸ=k
Ķ=K
ķ=k
Ĺ=L
ŀ=I
Ŀ=L
Ľ=L
ľ=l
Ļ=l
ļ=l
Ł=L
Ń=n
ń=n
Ň=N
ň=n
Ñ=N
ñ=n
Ņ=N
ņ=n
ʼn=n
ŋ=n
Ó=O
ó=o
Ô=O
ô=o
Ö=O
ö=o
ǒ=o
Ŏ=O
ŏ=o
Ō=O
ō=o
Õ=O
õ=o
Ő=O
ő=o
ố=o
Ồ=O
ồ=o
Ø=O
ø=o
Ỗ=O
ỗ=o
ǿ=o
Ỏ=O
ỏ=o
ơ=o
Ổ=O
ổ=o
Ọ=O
ọ=o
Ớ=O
ớ=o
Ờ=O
ờ=o
ỡ=o
ộ=o
Ở=O
ở=o
Ợ=O
ợ=o
Ŕ=R
ŕ=r
Ř=R
ř=t
Ŗ=R
ŗ=r
ś=s
Ŝ=S
ŝ=s
Š=S
š=s
Ş=S
ş=s
ß=B
ſ=J
Ť=T
ť=t
ţ=t
Þ=p
þ=p
Ŧ=T
ŧ=t
Ù=U
ù=u
Û=U
û=u
Ü=U
ü=u
ǔ=u
Ŭ=U
ŭ=u
ū=u
Ũ=U
ũ=u
Ů=U
ů=u
ų=u
Ű=U
ű=u
ǘ=u
ǜ=u
ǚ=u
Ủ=U
ủ=u
Ư=U
ư=u
Ụ=U
ụ=u
ứ=u
Ừ=U
ừ=u
Ữ=U
ữ=u
Ử=U
ử=u
ự=u
Ẃ=W
ẃ=w
Ẁ=W
ẁ=w
Ŵ=W
ŵ=w
Ẅ=W
ẅ=w
Ý=Y
ý=y
Ỳ=Y
ỳ=y
Ŷ=Y
ŷ=y
ÿ=y
Ÿ=Y
ỹ=y
Ỷ=Y
ỷ=y
Ỵ=Y
ỵ=y
Ź=Z
Ż=Z
ż=z
Ž=Z
ž=z
α=a
ά=a
Ά=A
β=B
δ=o
Έ=E
Ή=H
ι=l
ί=i
ϊ=i
Ϊ=I
κ=k
μ=u
Ό=O
ρ=p
υ=v
ύ=v
Ύ=Y
ϋ=v
ΰ=v
χ=x
ω=w
Ё=E
fileIS = new FileInputStream(fileName);
InputStreamReader inputStreamReader = new InputStreamReader(fileIS);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
System.out.println(bufferedReader.readLine());
TXT是unicode,用ultraedit32另存为UTF-8方式也试过了,
因为以前,没有这些特殊字符时,是正确的,UTF-8我试过一次了,那我再试一下
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;import com.sun.swing.internal.plaf.metal.resources.metal;public class Q13 {
private static final String FILE_NAME = "E:/ganymede/workspaceSVN/SDK/bin/test.txt";
public void readFile(String fileName) {
try {
/*
* get the reader
*/
InputStream inputStream = new FileInputStream(fileName);
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedInputStream = new BufferedReader(inputStreamReader);
String line = bufferedInputStream.readLine();
while(line != null) { // print the result
System.out.println(line);
line = bufferedInputStream.readLine();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
Q13 q13 = new Q13();
q13.readFile(FILE_NAME);
}
}
读的,80行就是通不过正则表达式<'.+=.+>如果将那80行不打印,用editplus打开是utf-8格式,显示正常,
如果打钱,用editplus打开就是ansi,乱码
关注下
InputStreamReader reader = new InputStreamReader(new FileInputStream(new File(filepath,filename)),"Unicode");