我正在使用Marathi Wordnet。在这个wordnet中有包含马拉地语单词的文本文件
我想在我的java代码中阅读这些marathi文档。我尝试过使用BufferedReader和FileReader.But我失败了。 这是我试过的代码。
FileReader fr=new FileReader("onto_txt");
BufferedReader br=new BufferedReader(fr);
String line=br.readLine();
while(line!=null){
System.out.println(line);
line=br.readLine();
}
fr.close();
br.close();
答案 0 :(得分:0)
FileReader是一个使用平台默认编码的旧实用程序类。
假设文件是UTF-8,最好明确指定编码。
try (BufferedReader br = new BufferedReader(new InputStreamReader(
new FileInputStream("C:/xyz/onto_txt"), StandardCharsets.UTF_8))) {
String line = br.readLine();
while (line != null) {
System.out.println(line);
System.out.println(Arrays.toString(line.getBytes(StandardCharsets.UTF_8)));
line = br.readLine();
}
} // Closes br
再次使用System.out将该行转换为平台的编码。这可能无法显示字符串line
;因此每个字节的转储。信息量不大,但它可能会澄清在前一行中显示?
的地方,确实存在Unicode字符。
内部java String保存Unicode,并且可以包含任何文本。因此,您可以根据需要处理line
。