0

我有一个JFileChooserinFileName类型的变量。

我已将此变量称为类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?如果不是那么我该如何解决这个问题?任何帮助深表感谢。

4

1 回答 1

3

如果您尝试读取 a 选择的文件,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));
于 2013-08-21T09:55:18.180 回答