java.io.FileNotFoundException:(权限被拒绝)
我想读取 Vista 上文档文件夹中的文件。 该字段确实存在于指定位置,但在尝试打开文件的输入流时仍然收到以下错误
java.io.FileNotFoundException: (Permission denied)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at rtran.dao.CustomerDAO.insertCustomer(CustomerDAO.java:29)
at rtran.action.AddCustomerAction.execute(AddCustomerAction.java:22)
at rtran.controller.Controller.actionPerformed(Controller.java:85)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6041)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
at java.awt.Component.processEvent(Component.java:5806)
at java.awt.Container.processEvent(Container.java:2058)
at java.awt.Component.dispatchEventImpl(Component.java:4413)
at java.awt.Container.dispatchEventImpl(Container.java:2116)
at java.awt.Component.dispatchEvent(Component.java:4243)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
at java.awt.Container.dispatchEventImpl(Container.java:2102)
at java.awt.Window.dispatchEventImpl(Window.java:2440)
at java.awt.Component.dispatchEvent(Component.java:4243)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
关于如何解决此问题的任何想法?
阿卜杜勒·哈利克
i am tying to read a file placed in my documents folder on vista. The fiel does exists on a specified location but still i am getting the following error when trying to open an input stream to the file
java.io.FileNotFoundException: (Permission denied)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at rtran.dao.CustomerDAO.insertCustomer(CustomerDAO.java:29)
at rtran.action.AddCustomerAction.execute(AddCustomerAction.java:22)
at rtran.controller.Controller.actionPerformed(Controller.java:85)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6041)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
at java.awt.Component.processEvent(Component.java:5806)
at java.awt.Container.processEvent(Container.java:2058)
at java.awt.Component.dispatchEventImpl(Component.java:4413)
at java.awt.Container.dispatchEventImpl(Container.java:2116)
at java.awt.Component.dispatchEvent(Component.java:4243)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
at java.awt.Container.dispatchEventImpl(Container.java:2102)
at java.awt.Window.dispatchEventImpl(Window.java:2440)
at java.awt.Component.dispatchEvent(Component.java:4243)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
Any ideas on how to resolve this??
Abdul Khaliq
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您是否有可能尝试写入只读文件? 从堆栈跟踪中,您正在调用插入方法。
另外,您有权限访问该文件吗? 我的意思是对文件本身及其父目录(及其父目录等)的读取权限。
Is it possible you are trying to write to a read only file? From the stack trace you are invoking an insert method.
Also, do you have permissions to access the file? I mean read permissions on the file itself as well as on its parent directory (and its parent and so on).
似乎 java 进程缺乏读取该文件的权限。 你可能正在运行 UAC 以及 MS 放入 Vista 中的所有其他烦人的东西。
我会执行以下操作:
Seems like the java-process lacks permission to read the file. You're problaby running with UAC and all that other annoying stuff MS put into Vista.
I'd do the following:
从 1.6.0_14 开始,java 采用与 1.6.0_13 不同的方式处理虚拟路径(符号链接),并且 Windows Vista 在程序文件、文档和设置上大量使用它们。 也许这是你的问题。
From 1.6.0_14 java does something other way than 1.6.0_13 handling virtual paths (symlinks) and windows vista uses them heavily on program files and documents and settings. Maybe this is your problem.