читать файл в апплете - PullRequest
1 голос
/ 22 февраля 2009

Привет, я хочу прочитать файл, который лежит на сервере. Я получаю путь к файлу по параметру

<PARAM name=fileToRead value="http://someserver.de/file.txt">

при запуске апплета возникает следующая ошибка

Вызывается: java.lang.IllegalArgumentException: схема URI не является "файлом"

Может кто-нибудь дать мне подсказку?

BufferedReader file;
                        String strFile = new String(getParameter("fileToRead"));

                        URL url = new URL(strFile);
                        URI uri = url.toURI();
                        try {

                            File theFile = new File(uri);
                            file = new BufferedReader(new FileReader(new File(uri)));

                        String input = "";

                            while ((input = file.readLine()) != null) {
                               words.add(input);
                            }
                        } catch (IOException ex) {
                          Logger.getLogger(Hedgeman.class.getName()).log(Level.SEVERE, null, ex);
                        } 

Ответы [ 3 ]

3 голосов
/ 22 февраля 2009
 File theFile = new File(uri);

не правильный метод. Вы получаете доступ к URL, а не к файлу.

Ваш код должен выглядеть так:

try
{
 URL url = new URL(strFile);
 InputStream in = url.openStream();
 (... read file...)
 in.close();
} catch(IOException err)
{
 (... process error...)
}
1 голос
/ 22 февраля 2009

Вам нужно будет подписать апплет, если к файлу не обращаются с того же сервера / порта, с которого пришел апплет.

1 голос
/ 22 февраля 2009

Вы пытаетесь открыть как файл, что-то, что не следует за файлом: // uri, как предполагает ошибка.

Если вы хотите использовать URL, я предлагаю вам просто использовать url.openStream (), что должно быть проще.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...