我有一个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?如果不是那么我该如何解决这个问题? 非常感谢任何帮助。
最佳答案
如果您尝试读取由 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));
关于java - inputStreamReader 无法识别 JFileChooser 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18354020/