2012-03-23 15 views
0

Ich mache einen Reader für ein Programm, das ich verwende. Die Informationen werden in einem benutzerdefinierten Dateityp (.BSMX) exportiert. Wenn ich die Datei in Notepad öffne, ist es eine Reihe von Tags, die in der Struktur zu XML ähnlich sind. Ich wundere mich, wie ich die Datei wie eine XML-Datei parsen kann, um die Daten in einem benutzerdefinierten Objekt zu speichern, um die Daten zu verwenden.So analysieren Sie benutzerdefinierte Datei in Android

Edit: heres ein Abschnitt der Datei und wie seine formatiert, es ist nicht XML und muß nicht den XML-Code an der Spitze

  <_MOD_>2012-03-23</_MOD_> 
      <F_E_NAME>FUggin Hiccups BIAB</F_E_NAME> 
      <F_E_MASH_VOL>896.0000000</F_E_MASH_VOL> 
      <F_E_TUN_MASS>35.2000000</F_E_TUN_MASS> 
      <F_E_BOIL_RATE_FLAG>1</F_E_BOIL_RATE_FLAG> 
      <F_E_TUN_SPECIFIC_HEAT>0.1200000</F_E_TUN_SPECIFIC_HEAT> 
      <F_E_TUN_DEADSPACE>0.0000000</F_E_TUN_DEADSPACE> 
      <F_E_TUN_ADJ_DEADSPACE>0</F_E_TUN_ADJ_DEADSPACE> 
      <F_E_CALC_BOIL>1</F_E_CALC_BOIL> 
      <F_E_BOIL_VOL>894.7200000</F_E_BOIL_VOL> 
      <F_E_BOIL_TIME>60.0000000</F_E_BOIL_TIME> 
      <F_E_OLD_EVAP_RATE>10.0000000</F_E_OLD_EVAP_RATE> 
      <F_EQUIP_39>1</F_EQUIP_39> 
      <F_E_BOIL_OFF>96.0000000</F_E_BOIL_OFF> 
      <F_E_TRUB_LOSS>128.0000000</F_E_TRUB_LOSS> 
      <F_E_COOL_PCT>4.0000000</F_E_COOL_PCT> 
      <F_E_TOP_UP_KETTLE>256.0000000</F_E_TOP_UP_KETTLE> 
      <F_E_BATCH_VOL>640.0000000</F_E_BATCH_VOL> 
      <F_E_FERMENTER_LOSS>64.0000000</F_E_FERMENTER_LOSS> 
      <F_E_TOP_UP>0.0000000</F_E_TOP_UP> 
      <F_E_EFFICIENCY>67.4000000</F_E_EFFICIENCY> 
      <F_E_HOP_UTIL>100.0000000</F_E_HOP_UTIL> 
     </F_R_EQUIPMENT> 

Antwort

1

Da Ihre Dateiinhalte XML ähneln, können Sie SAXParser am besten ausprobieren. Sie können damit einen benutzerdefinierten ContentHandler erstellen, so dass Sie im Grunde Ihre Tags festlegen und selbst programmieren können, wie die Datei analysiert wird.

Andernfalls, wenn SAXParser nicht funktioniert (keine XML-Datei), müssen Sie es von Hand analysieren, oder besser, machen Sie die Datei wie eine XML-Datei strukturiert.

+0

Ich habe leider keine Kontrolle über die Dateistruktur (nicht mein Programm, das ich versuche, einen App-Reader für) aber ich werde versuchen, den Sax Parser und sehen, ob es mit einer nicht XML-Datei, die Tags wie funktioniert ein XML, aber für den Fall, dass es nicht, wo würde ich herausfinden, wie man es mit der Hand analysieren – DRing

+0

So endlich den SAXParser eingerichtet und getestet und es funktioniert, danke für die Hilfe – DRing

0

Es wäre hilfreich, wenn Sie ein Beispiel hinterlassen, wie die Datei aussieht .

Grundsätzlich können Sie je nach Größe der Datei einen InputStream Reader verwenden, die Datei entirley in einen String lesen und diesen String mit Tags wie etwa der .split() Methode aufteilen. Danach können Sie die benötigten Daten in einem Array speichern.

Verwandte Themen