12

我有这个奇怪的问题,当我使用

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

1 回答 1

7

只需将文件路径指定为 URI:

File FileToRead = new File(new URI("file://MYSERVER/MYFOLDER/MYFOLDER/MYPICTURE.JPG"));

编辑请注意,该字符串是一个 URI!它不能包含空格,因此您必须用“%20”替换它们才能使其工作。

于 2012-05-02T15:27:15.720 回答