godlie
Goto Top

Doppelter Zeilenumbruch Outlook Mail VB

Hallo,
bin gerade dabei eine Backup Lösung für Outlook zu basteln.

Sinn und Zweck dieser "Übung" ist es die gehassten riesigen pst Files zu entschlacken und die Mails einerseits als Files auslagern
und in einer DB einen "SearchIndex" zu erstellen zur nachträglichen verfolgung.

Nun denn die automatische Abarbeitung der Mails durch ein VB Programm haut ja schon gut hin.

Jetzt steh ich aber sehr an und zwar möchte ich unnötige Zeilenumbrüche entfernen aus dem Plain-text der Mails.
Nachdem VB ja \r\n, \n, \r nicht kennt ist es insofern ja schon ein wenig unwitzig.
An den Html Code will ich garnicht erst denken, denn eine Mail mit ein paar Zeilen rund 20K is ja wohl ein schlechter Scherz.

Ich hab mich schon an einem doppelten CHR(10) versucht, wetiers ein CHR(10) & CHR(13).

Jetzt geb ich den Ball mal weiter steh nämlich komplett an.

Dank und gruß

p.s. Umstieg auf VC# ist angedacht

Content-Key: 82784

Url: https://administrator.de/contentid/82784

Printed on: April 19, 2024 at 08:04 o'clock

Member: godlie
godlie Mar 11, 2008 at 15:30:21 (UTC)
Goto Top
Sodala habs jetzt hinbekommen und ich sags euch,
es gibt nix schlimmeres als die Erfindung von Outlook.

Nur gut das es einen HexEditor und viel Kaffee gegeben hat.

Ich hab jetzt teilweise wirklich witzige Konstrukte angetroffen.

Der Inhalt der Mail wurde jeweils über ein MailItem.Body ausgelesen.
Zeilenumbrüche sind nicht immer nur Chr(13) / Chr(10)
man trifft manchmal auch

chr(32) / chr(13) / chr(10)

und der tagessieger heute:

chr(160) / chr(13) / chr(10)

Jedem dem die Asci Tabelle nicht fremd ist der frägt sich sicherlich wie ich was ein
chr(160) in einer plainText Mail macht.

So und nun zum CodeSnippet:

message3 = Replace(mailItem(N).Body, Chr(13) & Chr(10) & Chr(13) & Chr(10), Chr(13) & Chr(10))
message3 = Replace(message3, Chr(13) & Chr(10) & Chr(13) & Chr(10), Chr(13) & Chr(10))

Mithilfe dieser Konstruktion ist es wirkich zuverlässig möglich die ganzen unnötigen Doppelten Zeilenumbrüche loszuwerden und hiermit dieses ominöse chr(160)

message3 = Replace(message3, Chr(160), "")

tja mal schaun auf was ich noch so stoßen werde.