Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Last_Night
20 / 20 / 8
Регистрация: 02.10.2012
Сообщений: 124
#1

Выкачать XML с сервера или сайта для последующего парсинга

13.10.2013, 17:51. Просмотров 881. Ответов 6
Метки нет (Все метки)

Подскажите как можно выкачать XML из сайта или сервера?
скорей всего качаться будет с сайта примерный путь www.sitename.com/XML/file.xml
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.10.2013, 17:51
Ответы с готовыми решениями:

Выбор книги или статей для создания приложений под Android (клиент для сервера)
С какой книги посоветуете начать изучение (желательно сразу на 4 версии). ...

JSON или XML: что более оптимизировано для парсинга
У какого языка более быстрый стандартный парсер (в глубину) ?

Авторизация на сайте для последующего парсинга страницы
Добрый день. Пытаюсь написать первую программу на C#. Требуется: зайти на сайт...

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

Выбор для xml парсинга
Приветствую всех. Помогите пожалуйста советом, что лучше взять для парса xml...

6
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
15.10.2013, 19:54 #2
HttpGet запросом.
1
Last_Night
20 / 20 / 8
Регистрация: 02.10.2012
Сообщений: 124
21.10.2013, 19:04  [ТС] #3
Цитата Сообщение от V0v1k Посмотреть сообщение
HttpGet запросом.
пытаюсь выкачать файл но прила сразу вылетает
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
public class MainActivity extends Activity {
    /**
     * Called when the activity is first created.
     */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        downloadFile();
    }
 
    public void downloadFile(){
 
        try {
            URL url = new URL("http://alexche.zz.mu/data.xml");
            URLConnection conection = url.openConnection();
 
            conection.connect();
            int lenghtOfFile = conection.getContentLength();
            InputStream is = url.openStream();
            File testDirectory = new File(Environment.getExternalStorageDirectory() + "Test");
            if (!testDirectory.exists()) {
                testDirectory.mkdir();
            }
            FileOutputStream fos = new FileOutputStream(testDirectory + "/test.xml");
            byte data[] = new byte[1024];
            int count = 0;
            long total = 0;
            int progress = 0;
            while ((count = is.read(data)) != -1) {
                total += count;
                int progress_temp = (int) total * 100 / lenghtOfFile;
                if (progress_temp % 10 == 0 && progress != progress_temp) {
                    progress = progress_temp;
                }
                fos.write(data, 0, count);
            }
            is.close();
            fos.close();
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}
а логи указывают на строку conection.connect() , как я понимаю невозможно подключится
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
21.10.2013, 21:29 #4
скорее всего NetworkOnMainThreadException
2
Last_Night
20 / 20 / 8
Регистрация: 02.10.2012
Сообщений: 124
22.10.2013, 17:15  [ТС] #5
Цитата Сообщение от V0v1k Посмотреть сообщение
скорее всего NetworkOnMainThreadException
проблема решена, всё работает корректно!
1
Last_Night
20 / 20 / 8
Регистрация: 02.10.2012
Сообщений: 124
10.11.2013, 16:49  [ТС] #6
вопрос закрыт
1
AlexChe
0 / 0 / 0
Регистрация: 07.11.2013
Сообщений: 4
10.11.2013, 16:51 #7
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
package com.example.xmlparser;
 
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
 
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
 
import java.io.IOException;
import java.util.ArrayList;
 
public class MainActivity extends Activity {
    ListView listView;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        listView = (ListView) findViewById(R.id.lv);
 
        ArrayList<String> list = new ArrayList<String>();
 
        try {
            XmlPullParser parser = getResources().getXml(R.xml.contacts);
 
            while (parser.getEventType()!= XmlPullParser.END_DOCUMENT) {
                if (parser.getEventType() == XmlPullParser.START_TAG
                        && parser.getName().equals("contact")) {
                    list.add(parser.getAttributeValue(0) + " "
                            + parser.getAttributeValue(1) + "\n"
                            + parser.getAttributeValue(2));
                }
                parser.next();
            }
        }
        catch (Throwable t) {
            Toast.makeText(this,
                    "Ошибка при загрузке XML-документа: " + t.toString(), 4000)
                    .show();
        }
 
        listView.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, list));
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    
}
вот рабочий образец
0
10.11.2013, 16:51
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.11.2013, 16:51

Библиотека для xml парсинга
Доброго времени суток. У меня появилась необходимость чтения xml из потока...

Регулярное выражение для парсинга ответа почтового сервера
Здравствуйте, уважаемые коллеги! Необходимо содействие в создании регулярки...

Посоветуйте библиотеку для парсинга XML (xdxf)
Здравствуйте. Есть словари в формате xdxf. Кто не знаком xdxf - это, как по...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru