Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Как прочитать удаленный файл? / 4 сообщений из 4, страница 1 из 1
10.11.2014, 14:18
    #38800798
VaneS Ri_lax
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как прочитать удаленный файл?
Здравствуйте, пишу программу которая разбирает простой XML документ. Она работает только когда сам XML файл находится на локальной машине, а вот почему то на удаленный файл пишет ошибку, помогите пожалуйста разобраться, вот код программы:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
import java.util.Iterator;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.jdom2.Content;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.JDOMException;
import org.jdom2.filter.ContentFilter;
import org.jdom2.filter.ElementFilter;
import org.jdom2.input.SAXBuilder;


public class DataXML {
    
    public static void xxx() throws URISyntaxException{
        
     URI uu = new URI("http://www.domen.ru/test/dataxml.xml");
       File file = new File(uu);
       
       SAXBuilder parser = new SAXBuilder();
       Document xmlDoc;
       
        try {
            xmlDoc = parser.build(file);
            System.out.println("Headers");
            List elements = xmlDoc.getRootElement().getContent(new ElementFilter("file"));
            
            Iterator iteratir = elements.iterator();
            
            while(iteratir.hasNext()){
                Element head = (Element) iteratir.next();
                String id = head.getAttributeValue("id");
                String name = head.getChildText("name");
                String time = head.getChildText("time");
                
               // System.out.println(id + ":" + name + " - " + departament);
                System.out.println("Номер файла: " + id);
                System.out.println("Полный адрес: " + name);
                System.out.println("Дата создания: " + time);
                System.out.println("*************");
                
                
                
            }
        } catch (JDOMException ex) {
            Logger.getLogger(DataXML.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(DataXML.class.getName()).log(Level.SEVERE, null, ex);[color=red][color=red][/color][/color]
        }
        
    }
   
}


Exception in thread "main" java.lang.IllegalArgumentException: URI scheme is not "file"
at java.io.File.<init>(File.java:421)
at DataXML.xxx(DataXML.java:25)
at Main.main(Main.java:66)
Java Result: 1
Я так понимаю ошибка ссылается на
Код: java
1.
 File file = new File(uu);
...
Рейтинг: 0 / 0
10.11.2014, 14:28
    #38800820
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как прочитать удаленный файл?
VaneS Ri_lax,

java.io.File работает исключительно с файловой системой ОС. Можно работать через файловую систему и с удаленными файлами, если они подключены в эту файловую системы средствами ОС.

java.io.File не работает с HTTP и другими интернет-протоколами.

Для решения вашей задачи можете использовать URL.openStream().

Научитесь использовать абстрактные концепции InputStream/OutputStream в Java. Это решит для вас множество будущих вопросов.
...
Рейтинг: 0 / 0
10.11.2014, 14:29
    #38800824
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как прочитать удаленный файл?
Для http обычно так делают
Код: java
1.
2.
URL fileUrl = new URL(url);
InputStream imageStream = fileUrl.openStream();
...
Рейтинг: 0 / 0
10.11.2014, 14:47
    #38800853
VaneS Ri_lax
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как прочитать удаленный файл?
BlazkowiczНаучитесь использовать абстрактные концепции InputStream/OutputStream в Java. Это решит для вас множество будущих вопросов.
А можете дать ссылку на хорошую литературу желательно на русском!?
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Как прочитать удаленный файл? / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]