Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package pl.msz.waluty;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.util.ArrayList;
- import java.util.List;
- import org.xmlpull.v1.XmlPullParser;
- import org.xmlpull.v1.XmlPullParserException;
- import org.xmlpull.v1.XmlPullParserFactory;
- import android.R.bool;
- import android.os.Environment;
- import android.util.Log;
- public class Parsowanie
- {
- List<KursyXml> listaKursow;
- private KursyXml kurs;
- private String text;
- public String dataPublikacji;
- private int index;
- private boolean edytuj = false;
- private boolean ustawNazwe = true;
- public Parsowanie() {
- listaKursow = new ArrayList<KursyXml>();
- }
- public List<KursyXml> getlistaKursow() {
- return listaKursow;
- }
- public List<KursyXml> parse(String plik) {
- XmlPullParserFactory factory = null;
- XmlPullParser parser = null;
- try {
- factory = XmlPullParserFactory.newInstance();
- factory.setNamespaceAware(true);
- File file = new File(Environment.getExternalStorageDirectory() + plik);
- FileInputStream fis = new FileInputStream(file);
- parser = factory.newPullParser();
- parser.setInput(new InputStreamReader(fis, "iso-8859-2"));
- int eventType = parser.getEventType();
- while (eventType != XmlPullParser.END_DOCUMENT) {
- String tagname = parser.getName();
- switch (eventType) {
- case XmlPullParser.START_TAG:
- if (tagname.equalsIgnoreCase("pozycja")) {
- // create a new instance of employee
- kurs = new KursyXml();
- }
- break;
- case XmlPullParser.TEXT:
- text = parser.getText();
- break;
- case XmlPullParser.END_TAG:
- if (tagname.equalsIgnoreCase("pozycja")) {
- // add employee object to list
- listaKursow.add(kurs);
- }
- else if(edytuj == true)
- {
- if (tagname.equals("kurs_kupna"))
- {
- kurs = listaKursow.get(index);
- kurs.setKursKupna(text);
- }
- else if (tagname.equals("kurs_sprzedazy"))
- {
- kurs = listaKursow.get(index);
- kurs.setKursSprzedazy(text);
- edytuj = false;
- }
- }
- else
- {
- if (tagname.equals("nazwa_waluty"))
- {
- for(int i=0; i<listaKursow.size(); i++)
- {
- if(text.equals(listaKursow.get(i).getNazwaWaluty()))
- {
- index = i;
- edytuj = true;
- listaKursow.remove(listaKursow.size()-1);
- ustawNazwe = false;
- }
- }
- if(ustawNazwe == true)
- {
- kurs.setNazwaWaluty(text);
- }
- ustawNazwe = true;
- } else if (tagname.equals("przelicznik")) {
- kurs.setPrzelicznik(text);
- } else if (tagname.equals("kod_waluty")) {
- kurs.setKodWaluty(text);
- } else if (tagname.equals("kurs_sredni")) {
- kurs.setKursSredni(text);
- } else if (tagname.equals("data_publikacji")) {
- setDataPublikacji(text);
- Log.i("data2", "ustawiam" + getDataPublikacji());
- }
- }
- break;
- default:
- break;
- }
- eventType = parser.next();
- }
- } catch (XmlPullParserException e) {
- e.printStackTrace();
- } catch (IOException e) {
- e.printStackTrace();
- }
- return listaKursow;
- }
- public String getDataPublikacji() {
- return dataPublikacji;
- }
- public void setDataPublikacji(String dataPublikacji) {
- this.dataPublikacji = dataPublikacji;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement