Explode in Java (split). Komme nicht weiter.

  • Themenstarter Themenstarter Neulingsazubi
  • Beginndatum Beginndatum
N

Neulingsazubi

Gast
PHP:
foreach ($inputdata as $zeile) {
      $array_result = explode("|", $zeile);
      foreach ($array_result as $result_key => $result_value) {
           $result = explode(": ", $result_value);
           $result2[$i][$result[0]] = $result[1];
      }
}

Dies ist der PHP Code der nun in Java geschrieben werden soll.
Bin noch frisch in der Ausbildung und bekomme den Mist einfach nicht hin.

Meine bisherigen Gedankengänge:
Java:
while ((line = br.readLine()) != null) {
	final String oneline = line;
	String[] array = oneline.split("[|]");
	System.out.println(java.util.Arrays.toString(array));
}

Dies gibt mir dann folgendes zurück:

[Haendler: 9165, Firma: Blubbsunternehmen, Firmenzusatz: Inh. Dingens, Gesellschaftsform: GmbH, etc.......]

Jetzt würde ich gerne nochmal trennen und zwar mit ": ". So dass ich eig in einem "Array" Haendler => 9165, Firma => Blubbsunternehmen, etc stehen habe. Aber dass will nicht in meinen Kopf.

Ich bedanke mich jetzt schonmal für eure Hilfe.

Mit Freundlichen Grüßen
René
 
In Java gibts keinen Assoziativen Arrays wie in PHP, also wirds am ende in einer Map landen. Im Prinzip kannst du über das erste Array genauso iterieren wie in PHP:

Java:
while ((line = br.readLine()) != null) {
    final String oneline = line;
    String[] array = oneline.split("[|]");
    Map<String,String> values=new HashMap<>();
    for(String akt:array) {
        String[] split=akt.split(":");
        values.put(split[0],split[1]);
    }
}
 
Super danke 🙂
Einziges was anzumerken war, dass du die Map in der Schleife deklariert hast, und ich sie so außerhalb der Schleife nicht mehr verwenden konnte. Aber trotzdem.

Vielen Dank.
Hast mir sehr geholfen.
 

Zurück
Oben