我正在开发一个必须访问访问者文件系统的 Java Applet,因此当我使用浏览器打开文件时(文件位于HTML 标签的位置),我将文件压缩.class
为.jar
带有自签名证书的文件,我接受安全弹出窗口然后我在 Java 控制台中收到此错误:call.html
<applet>
java.security.AccessControlException:访问被拒绝(java.io.FilePermission output.txt 写入)
我正在使用 aFileInputStream
和 a FileOutputStream
。FileInputStream
有效但无效 FileOutputStream
,为什么?
这是我的代码:
try {
AccessController.doPrivileged(
new PrivilegedExceptionAction() {
@Override
public Object run() throws FileNotFoundException {
outFile = new FileOutputStream("output.txt");
inFile = new FileInputStream("input.txt");
return "test";
}
}
);
} catch (PrivilegedActionException e) {
throw (FileNotFoundException) e.getException();
}
我尝试了很多方法来进行特权操作,FileInputStream
总是有效,FileOutputStream
但不是。output.txt
不是只读文件。