我有这个奇怪的问题,当我使用读取文件在网络路径
File FileToRead = new File("\\\\MYSERVER\\MYFOLDER\\MYFOLDER\\MYPICTURE.JPG");
在网络上读取文件,我得到的是一个空指针异常。通常情况下,本地路径与此协同工作,但在网络路径上时,我无法实现其工作。有任何想法吗?
PS:噢,我的网络连接似乎工作,访问在Windows资源管理器数据时,没有任何问题......
更多的代码:
File FileToRead = new File("file://DOKSERVICE/Somefolder/ProductImage/01001.JPG");
//File FileToRead = new File("c:\\dog.jpg"); local test
BufferedImage image = ImageIO.read(FileToRead);
BufferedImage resizedimage = new BufferedImage(260, 260,BufferedImage.TYPE_INT_RGB);
Graphics2D g = resizedimage.createGraphics();
g.drawImage(image, 0, 0, 260, 260, null);
g.dispose();
picture.setIcon(new ImageIcon(image));
我猜这是与案件有关。完全是这样,全部大写吗? Windows不区分大小写。 Java不需要。 – adarshr
您可以发布实际导致错误的结果或空结论吗?在任何Java平台上,您列出的行不应该为空。 – maerics
您确定您的UNC参考指向* share *而不是文件夹,例如\\\\ MYSERVER \\ SHARENAME \\ FOLDER \\ FOLDER \\ MYPICTURE.JPG。如果上述示例的第二部分确实是文件夹名称,而不是共享,则引用无法解析。 –