我有一个小方法试图从一个Windows返回一个Windows文件路径 InputStream对象。在Eclipse Variables窗口中,我可以看到String I 想要在字段'path'中,但似乎无法访问并返回它。 (见图。)
static String getPathFromInputStream(InputStream is) {
Scanner s = new Scanner(is).useDelimiter("\\A");
return "abc"; // Compile error from: is.in.path;
} // "in cannot be resolved or is not a field"
两个问题:我是否应该能够访问我在变量中看到的所有内容 窗口?第二,我如何返回String'path'(如果可以的话)?
答案 0 :(得分:1)
您的输入流对象的类型为FileInputStream,但表示为InputStream,该属性适用于FileInpuStream。
并且您无法访问该窗口中的所有变量,它会向您显示所有私有和公共变量,您只能访问公共成员和方法。
答案 1 :(得分:0)
嗯,答案是:不,你不应该从InputStream获取路径。您所看到的变量应该是私有的,而对于in字段,基于FilterInputStream的过滤流中有一个受保护的字段,我相信。