当我使用
时,我有这个奇怪的问题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));
答案 0 :(得分:7)
只需将文件路径指定为URI:
File FileToRead = new File(new URI("file://MYSERVER/MYFOLDER/MYFOLDER/MYPICTURE.JPG"));
编辑请注意该字符串是一个URI!它不能包含空格,因此您必须将它们替换为“%20”才能使其正常工作。