java - inputStreamReader 无法识别 JFileChooser 类型

标签 java types bufferedreader streamreader

我有一个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/

相关文章:

java - 有谁知道如何解析这样的文本文件?

java - 字符串索引超出范围?

c++ - 在 C++ 中,您可以使用 bool 和 int 运算符执行哪些操作?

javascript - 为什么 javascript 在 null 情况下检查类型甚至使用 ==

java - 无法从 Java 文本文件中读取信息并对其进行排序

java - 如何获取 StreamTokenizer 中的行偏移量?

java - 是什么触发 Socket 的 InputStream 关​​闭(或到达流的末尾)并简单地产生 null?

java - 用于打开并制作多个驱动程序和选项的 Selenium 代码

java - 如何在数据库中存储自动从1开始并使用java中的注释递增的值?

c# - C# 可以存储比 double 更精确的数据吗?