Problem beim "spliten" eine Textdatei

  • Themenstarter Themenstarter Phil
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
P

Phil

Gast
Hallo,

ich hoffe Ihr könnt mir weiterhelfen 😉

Ich habe ein kleines Programm geschrieben das Emails aus Textdateien (diese kommt aus einer Datenbank <- leider kein direkter zugriff) ausließt, funktioniert auch alles wunderbar. Nur hat sich nun das Trennzeichen geändert, und zwar von ";" nach "|"...

Gut, dachte mir dass das kein Problem ist, änderst halt schnell das Zeichen im Code...

Tja, so einfach ist es dann leider nicht geworden, den irgendwie verarbeitet Java dieses Zeichen falsch wenn man versucht einen String mit "|" zu spliten.

hab schon versucht das "|" mit "/174" auszutauschen =>erfolglos
mit replaceAll() die "|" mit ";" auszutauschen =>selbe wie mit split()

aja, die Textdatei ist so aufgebaut:

name1|name2|name3 ...
wert1|wert2|wert3 ...
wert1|wert2|wert3 ...


Kann mit wer erklären WIESO?? 😉
und mir vl helfen


Danke,
Phil
 
split und replaceAll benutzen einen RegEx. Bei RegEx ist '|' ein Sonderzeichen das mit \ maskiert werden muss.
Da '\' in Java selbst ein Sonderzeichen ist musst du aber doppelt maskieren, also: \\|
 
Hallo Phil,

wenn ich das jetzt richtig verstanden habe, willst du aus einer Datenbank, in der Textinhalte stehen, die Texte rausholen und darauß eine E-Mail formulieren.

Nur so ganz verstehe ich nicht warum du die Contents spliten willst, denn wenn man eine ordentlich angelegte Datenbank hat splitet man eigentlich nichts. Stell dir mal vor jemand schreibt einen Text und den speicherst du in einer Datenbank und in dem Text steht das Zeichen "|" oder ";" drin. Dann funktioniert das mit dem spliten schon mal nicht!

Schau mal hier: hier klicken
 
@Wildcard: DANKE 😉 Dachte mir schon das | ein Sonderzeichen ist, habs aber nur mit \| Probiert, und da kam immer ein Fehler -> logisch, wenn \ auch eines ist ^^

@Iome: ich hab das sehr vereinfacht erklärt... es ist im grunde genommen eine Datenbank in der alle Kunden gespeichert sind (mit E-Mail)
Auf diese Datenbank hat man jedoch nur durch ein Programm zugriff (DB liegt auf einem Server irgendwo in der Schweiz...)
In dem Programm kann man jedoch nur suchen, und ergebnisse als .txt abspeichern (Exportieren)
in der Ersten Zeile steht dann immer die Bezeichnung des Feldes, und darunter eben die Datensätze


Mein Programm ist nur dazu da, die E-Mail adressen auszulesen, alle die mit einer Liste übereinstimmen (Ist so eine Mailsammlung, und wenn man sich da einträgt und von einer Firma Werbung bekommt, kann man die verklagen 😉 kA irgendwie so, jedenfalls müssen die Mail-adressen die in der Liste vorkommen aussortiert werden)
und als Ausgabe kommen dann nur die Mailadressen raus.


Nun passt wieder alles!

Danke für Eure schnelle Antwort!

Phil
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben