ich habe hier einen .vmg Exporter für SMS-Nachrichten, die in diesem Format von der Nokia PC-Suite gespeichert werden, schnell mal zusammen gebastelt.
Mit dem Exporter ist es möglich mehrere SMS-Dateien in eine Textdatei zusammen zu fassen. (Um diese z.B. auszudrucken o.ä.)
Viel Spaß damit für diejenigen, die dafür eine Verwendung finden

Code: Alles auswählen
Structure NokiaMessage
phone_number.s
date.s
message.s
EndStructure
NewList messages.NokiaMessage()
Procedure getNokiaMessage(file$, List l.NokiaMessage())
fileptr.l = OpenFile(0, file$)
If(fileptr)
string.s = "";
While Eof(0) = 0
char.c = ReadCharacter(0);
If char <> 0
string = string + Chr(char);
EndIf
Wend
AddElement(l())
With l()
\phone_number = StringField(StringField(string, 10, #LF$), 2, ":")
\date = StringField(StringField(string, 14, #LF$), 2, ":") + ":" + StringField(StringField(string, 14, #LF$), 3, ":") + ":" + StringField(StringField(string, 14, #LF$), 4, ":")
\message = StringField(string, 15, #LF$)
EndWith
CloseFile(0)
EndIf
EndProcedure
FileName$ = OpenFileRequester("Select Nokia .vmg", "", "Nokia .vmg SMS-File (*.vmg)", 0, #PB_Requester_MultiSelection)
While FileName$
getNokiaMessage(FileName$, messages())
FileName$ = NextSelectedFileName()
Wend
saveFile$ = SaveFileRequester("Save to .txt", "messages.txt", "Textfile (*.txt)", 0)
If saveFile$ <> ""
fileptr.l = CreateFile(0, saveFile$)
If fileptr
ResetList(messages())
ForEach messages()
With messages()
WriteStringN(0, "Von: " + \phone_number)
WriteStringN(0, "Datum: "+ \date)
WriteStringN(0, "Nachricht: "+ \message)
WriteStringN(0, "");
EndWith
Next
CloseFile(0)
EndIf
EndIf
;---------------------------------;
; Copyright 2009 - Blackskyliner ;
; Contact: <blackskyliner@gmx.de> ;
;---------------------------------;
MFG
Blackskyliner