2

我编写了一个必须处理瑞典字母å äö. 我在一台 Windows 计算机上编写了它,并且在那里一切正常。但是当我尝试在 Unix 中运行该程序时,瑞典字母不显示,并且该程序在处理瑞典字母时不起作用。顺便说一句,它在java中。

有什么想法可以做什么,所以它在 Unix 上运行时可以工作吗?

4

1 回答 1

0

你应该使用类似于编码的东西

FileInputStream(file.getAbsolutePath()), fileEncoding)

wherefileEncodig == "UTF-8"或其他编码,也可用于添加-Dfile.encoding=UTF-8系统属性或以编程方式

System.setProperty("file.encoding", fileEncoding);

您可以使用与 . 相同的编码String#getBytes(fileEncoding)String构造函数getBytes。使用UTF-8charset 对符号进行编码和解码的示例:

new String (value.getBytes("ISO-8859-1"),"UTF-8");

我也用它来读取 UTF-8 捆绑资源。

同样的东西用于FileOutputStream

FileOutputStream(file.getAbsolutePath()), fileEncoding)
于 2012-09-11T20:30:52.693 回答