读取Java小程序中的本地文件时出现问题

时间:2014-05-26 23:11:32

标签: java applet

我一直在尝试从我最新项目的本地目录中读取文件。我传入函数字符串" intro.txt"虽然在我的IDE(JCreator)中读取正常,但在运行applet html时,文件无法读取,从而导致格式错误的URL异常。

public String readTextFile(String fileName) {
    String returnValue;
    String line;
    FileReader file = null;
    URL url = null;

    try {
        url = new URL(getCodeBase(), fileName);
    } catch(MalformedURLException e) {
        JOptionPane.showMessageDialog(null, "failed to load local file!");
    }

    try {
        InputStream in = url.openStream();
        BufferedReader bf = new BufferedReader (new InputStreamReader(in));
        StringBuffer strBuff = new StringBuffer();

        while((line = bf.readLine()) != null) {
            strBuff.append(line + "\n");
        }

        returnValue = strBuff.toString();
    } catch(IOException e) {
        e.printStackTrace();
    }

    return returnValue;
}

1 个答案:

答案 0 :(得分:-1)

您有权访问您网站访问者的文件系统(您的applet的用户)。为了能够执行此操作,您必须对您的applet进行签名,并且将警告用户您要访问其文件系统。只有他接受让你进入你才能阅读文件。

这是开始解决错误的好链接 http://docs.oracle.com/javase/tutorial/deployment/applet/security.html