Advertisement
Guest User

Untitled

a guest
Apr 16th, 2014
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.59 KB | None | 0 0
  1. package pl.msz.waluty;
  2.  
  3. import java.io.File;
  4. import java.io.FileInputStream;
  5. import java.io.IOException;
  6. import java.io.InputStreamReader;
  7. import java.util.ArrayList;
  8. import java.util.List;
  9.  
  10. import org.xmlpull.v1.XmlPullParser;
  11. import org.xmlpull.v1.XmlPullParserException;
  12. import org.xmlpull.v1.XmlPullParserFactory;
  13.  
  14. import android.R.bool;
  15. import android.os.Environment;
  16. import android.util.Log;
  17.  
  18. public class Parsowanie
  19. {
  20.  
  21. List<KursyXml> listaKursow;
  22. private KursyXml kurs;
  23. private String text;
  24. public String dataPublikacji;
  25. private int index;
  26. private boolean edytuj = false;
  27. private boolean ustawNazwe = true;
  28.  
  29. public Parsowanie() {
  30. listaKursow = new ArrayList<KursyXml>();
  31. }
  32.  
  33. public List<KursyXml> getlistaKursow() {
  34. return listaKursow;
  35. }
  36.  
  37. public List<KursyXml> parse(String plik) {
  38. XmlPullParserFactory factory = null;
  39. XmlPullParser parser = null;
  40.  
  41. try {
  42. factory = XmlPullParserFactory.newInstance();
  43. factory.setNamespaceAware(true);
  44.  
  45.  
  46. File file = new File(Environment.getExternalStorageDirectory() + plik);
  47. FileInputStream fis = new FileInputStream(file);
  48.  
  49.  
  50. parser = factory.newPullParser();
  51.  
  52. parser.setInput(new InputStreamReader(fis, "iso-8859-2"));
  53.  
  54. int eventType = parser.getEventType();
  55. while (eventType != XmlPullParser.END_DOCUMENT) {
  56. String tagname = parser.getName();
  57. switch (eventType) {
  58. case XmlPullParser.START_TAG:
  59. if (tagname.equalsIgnoreCase("pozycja")) {
  60. // create a new instance of employee
  61. kurs = new KursyXml();
  62. }
  63. break;
  64.  
  65. case XmlPullParser.TEXT:
  66. text = parser.getText();
  67. break;
  68.  
  69. case XmlPullParser.END_TAG:
  70. if (tagname.equalsIgnoreCase("pozycja")) {
  71. // add employee object to list
  72. listaKursow.add(kurs);
  73. }
  74. else if(edytuj == true)
  75. {
  76. if (tagname.equals("kurs_kupna"))
  77. {
  78. kurs = listaKursow.get(index);
  79. kurs.setKursKupna(text);
  80. }
  81. else if (tagname.equals("kurs_sprzedazy"))
  82. {
  83. kurs = listaKursow.get(index);
  84. kurs.setKursSprzedazy(text);
  85. edytuj = false;
  86. }
  87. }
  88. else
  89. {
  90. if (tagname.equals("nazwa_waluty"))
  91. {
  92. for(int i=0; i<listaKursow.size(); i++)
  93. {
  94. if(text.equals(listaKursow.get(i).getNazwaWaluty()))
  95. {
  96. index = i;
  97. edytuj = true;
  98. listaKursow.remove(listaKursow.size()-1);
  99. ustawNazwe = false;
  100. }
  101. }
  102. if(ustawNazwe == true)
  103. {
  104. kurs.setNazwaWaluty(text);
  105. }
  106. ustawNazwe = true;
  107. } else if (tagname.equals("przelicznik")) {
  108. kurs.setPrzelicznik(text);
  109. } else if (tagname.equals("kod_waluty")) {
  110. kurs.setKodWaluty(text);
  111. } else if (tagname.equals("kurs_sredni")) {
  112. kurs.setKursSredni(text);
  113. } else if (tagname.equals("data_publikacji")) {
  114. setDataPublikacji(text);
  115. Log.i("data2", "ustawiam" + getDataPublikacji());
  116. }
  117. }
  118.  
  119. break;
  120.  
  121. default:
  122. break;
  123. }
  124. eventType = parser.next();
  125. }
  126.  
  127. } catch (XmlPullParserException e) {
  128. e.printStackTrace();
  129. } catch (IOException e) {
  130. e.printStackTrace();
  131. }
  132.  
  133. return listaKursow;
  134. }
  135.  
  136. public String getDataPublikacji() {
  137. return dataPublikacji;
  138. }
  139.  
  140. public void setDataPublikacji(String dataPublikacji) {
  141. this.dataPublikacji = dataPublikacji;
  142. }
  143. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement