如果两台不同的机器具有不同的字符编码。如何从java程序中获取两台机器上的相同文件应该以类似的方式读取。是否可以使用java或我们必须手动设置两台机器的编码?< / p>
答案 0 :(得分:2)
听起来你只想使用类似的东西:
InputStream inputStream = new FileInputStream(...);
Reader reader = new InputStreamReader(reader, "UTF-8"); // Or whatever encoding
基本上你不必使用平台默认编码,你几乎不应该这样做。 FileReader
始终使用平台默认编码是一种痛苦:(我更愿意明确指定编码,即使我明确指定我想使用平台默认编码:)< / p>
答案 1 :(得分:0)
您无需更改机器的设置。
您可以使用任何允许您设置字符编码的java.io.Reader子类。例如InputStreamReader,如下所示:
new InputStreamReader(new FileInputStream("file.txt"), "UTF8");
答案 2 :(得分:0)
您可以控制在两种环境中读取/写入文件。
Working with text files in Java
您只能在阅读方面进行控制。
<强>更新强>
如果你的问题是你没有在eclipse控制台中正确看到输出,那么问题可能在于eclipse本身的编码设置。阅读this articl e,了解如何修复日食。