Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
97 / 4 / 0
Регистрация: 09.05.2015
Сообщений: 70
1

Чтение удалённого XML-файла со своего web-сайта

09.08.2017, 17:54. Показов 1270. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Мне необходимо осуществить чтение удалённого XML-файла со своего web-сайта.

Для того, чтобы осуществить чтение этого удалённого XML-файла использую код, который приведен в конце этого сообщения.

Мне нужно предусмотреть в этом коде следующий вариант возможного развития событий.

По какой-либо причине внезапно разрывается соединение с сервером в тот момент, когда уже началось построчное чтение XML-файла, но затем происходит обрыв соединения.

В XML-файле у меня хранится конфигурационная информация, а сам XML-файл - не большого размера.

Мне нет смысла организовывать побайтное чтение данных из файла, как это делается обычно в таких случаях.

А затем "дочитывать" оставшиеся байты в случае внезапного обрыва соединения с удалённым сервером.

Мне легче всего заново перечитать весь XML-файл.

Но как мне сделать следующее:

1. Как определить, что произошёл разрыв соединения во время чтения файла?

2. Как избежать зависания во время чтения XML-файла, если произошёл разрыв соединения именно в момент чтения этого файла?

3. Как определить, что файл был "прочитан" правильно до самого конца?

Скажите, как нужно изменить приведенный ниже код, чтобы правильно учесть все описанные мною моменты?

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
package com.webfile;
 
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
 
public class WebFileReader 
{
    public static String FileContent;
    public static String Url = "http://www.xmlfiles.com/examples/cd_catalog.xml";
    
    public static void main(String[] args) 
    {
        readFileContent(Url);
    }
    
    public static void readFileContent(String urlString)
    {
        FileContent = "";
        try
        {
            URL Url = new URL(urlString);
            
            InputStream inputStream = Url.openStream();
            InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
            BufferedReader in = new BufferedReader(inputStreamReader);
 
            StringBuilder response = new StringBuilder();
            String inputLine;
 
            while ((inputLine = in.readLine()) != null) 
                response.append(inputLine);
 
            in.close();
 
            FileContent = response.toString(); 
        }
        catch (Exception e)
        {               
        }
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.08.2017, 17:54
Ответы с готовыми решениями:

Запись и чтение файла своего типа
есть файл записанный на delphi : tf: file of crd; tf=assignfile('1.data'); write(tf,sr);...

Чтение XML ответа от сайта
Такой код string ur = string.Format("http://{0}:{1}/??type=tralala",IPSRV,WebPort);...

Как автоматически формировать содержимое web.xml, jboss-web.xml?
Подскажите пожалуйста, как автоматически формировать содержимое web.xml, jboss-web.xml .... ...

Чтение XML файла
Есть XML файл такого вида. Как перенести значения coins и health в язык С# ? <?xml version='1.0'...

1
244 / 164 / 133
Регистрация: 30.09.2012
Сообщений: 690
10.08.2017, 22:41 2
Не могу гарантировать правильность решения, но почему бы не скопировать весь входной поток разом в ByteArrayInputStream и дальше обрабатывать его, не заботясь о коннекте. Тем более, раз файл, как вы пишите, небольшой, то это, по-моему, неплохой вариант.
1
10.08.2017, 22:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.08.2017, 22:41
Помогаю со студенческими работами здесь

Чтение с файла Xml
Есть Xml с кодом <profile> <steamID64>76561198049827773</steamID64> <steamID> <!]>...

Чтение XML файла
Необходимо прочитать XML файл следующего вида: <?xml version="1.0" encoding="utf-8" ?>...

Чтение Xml - Файла
Читаю ХML: Код ( (Unknown Language)): Пока Чтение.Прочитать() Цикл Сообщить(Чтение.Имя); Если...

Чтение xml файла
использую код что бы создать xml файл XElement element = new XElement("XMLFileName", ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru