2013-08-21 56 views
0

我有一个变量,inFileName类型JFileChooserinputStreamReader将无法识别类型JFileChooser

我已经调用了该变量的方法HexFinder in class checksumFinder。它用于inputStreamReader内部的BufferedReader。 (我用这条线叫它)

cf.HexFinder(inFileName,null,null,null); 

这是因为inputStreamReader只会接受String类型的变量而引起错误。 (这是我的代码为BufferedReader中)

BufferedReader reader = new BufferedReader(new InputStreamReader(this.getClass().getResourceAsStream(inFileName))); 

有没有办法,我能得到的InputStreamReader在inFileName读?如果没有,那我该如何解决这个问题? 任何帮助,非常感谢。

回答

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));