我有一个 JFileChooser 类型的变量inFileName
。
我已将此变量调用到类 checksumFinder 中的方法 HexFinder 。它将在 BufferedReader 中的 inputStreamReader 中使用。 (我正在使用这一行来称呼它)
cf.HexFinder(inFileName,null,null,null);
这会导致错误,因为inputStreamReader只接受String类型的变量。 (这是我的BufferedReader代码)
BufferedReader reader = new BufferedReader(new InputStreamReader(this.getClass().getResourceAsStream(inFileName)));
有没有办法可以让inputStreamReader读入 inFileName ?如果没有,那么我该如何解决? 非常感谢任何帮助。
答案 0 :(得分:3)
如果您正在尝试阅读JFileChooser
选择的文件,则可以执行以下操作;
File file = inFileName.getSelectedFile();
BufferedReader reader = new BufferedReader(new FileReader(file));
请注意,FileReader
使用默认字符编码。您可以手动指定这样的编码;
String charset = "UTF-8";
BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), charset));