如何在Java中使用BufferedReader读取非英语(泰米尔语)字体,而该文件在MacOS中运行良好,但在Windows中运行不正常?
现在我用下面的代码阅读泰米尔字体如何在Java中使用BufferedReader读取非英语(泰米尔语)字体,而该文件在MacOS中运行良好,但在Windows中运行不正常?,java,unicode,ascii,bufferedreader,unicode-string,Java,Unicode,Ascii,Bufferedreader,Unicode String,现在我用下面的代码阅读泰米尔字体 BufferedReader tamil = new BufferedReader(new FileReader( "Copy1.txt")); StringBuffer Tamil_T = new StringBuffer(); StringBuffer each_T = new StringBuffer(); while ((EachLine = tamil.readLi
BufferedReader tamil = new BufferedReader(new FileReader(
"Copy1.txt"));
StringBuffer Tamil_T = new StringBuffer();
StringBuffer each_T = new StringBuffer();
while ((EachLine = tamil.readLine()) != null) {
int i = 0;
StringBuffer eachWord = new StringBuffer();
for (; i < tamilEachLine.length(); i++) {
if (i >= 27) {
if (tamilEachLine.charAt(i) != ' '
|| i == tamilEachLine.length() - 1) {
eachWord.append(tamilEachLine.charAt(i));
} else if (tamilEachLine.charAt(i) == ' ') {
each_T.append(eachTamilWord);
each_T.append("%20");
eachWord = new StringBuffer();
}
}
}
}
我得到的只是
我也试过cp1252,utf-16,utf-32。到目前为止,在Windows操作系统中还没有任何功能可用
输入文件中的示例字体如下所示
"என் பெயர் ராமு சோமு" 泰米尔语不是一种字体。它是一种可以写下来的人类语言。现在,由
java.io.Reader
读取的文本文件需要一个字符集,所以你必须知道用于编码Copy1.txt
的字符集。这个文件是由人类编写的吗?从互联网下载的吗?它对我来说是修改过的还是不可变的?你需要上传原始的file某处(最好压缩以确保任何人都不会转码)然后告诉我该文件应该如何在Windows和Mac计算机上运行输入文件是我的朋友提供的,我将该文件中的几行复制到Mac中的一个新文件中,一切正常。同一文件通过电子邮件发送到Windows系统,在使用前添加并保存了几行。如何找到文件的编码?我知道“你需要把原始文件上传到某个地方(最好是压缩,以确保没有人转码),然后告诉这个文件应该如何在Windows和Mac机器上传输”。你是说你想让我上传这个文件,让这里的观众看一看吗?
BufferedReader tamil = new BufferedReader(new FileReader(
"Copy1.txt"), "utf-8");