Danke taurec und diali, das klappt.
Nun habe ich noch ein Problem. Beim Einlesen muss ich den Import von ASCII in ANSI wandeln. Mache ich das an einer falschen Stelle, oder warum klappt mein Call Ascii2Ansi nicht?
Binde ich den Aufruf mit ein, ist das RT-Feld im Importdokument leer:
############
Sub Initialize
Dim imput As String
Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Set db = session.CurrentDatabase
Set doc = New NotesDocument( db )
Dim rtitem As New NotesRichTextItem(doc, "imp22")
fileNum% = Freefile()
Print Freefile()
counter = 0
Open "c:\backup.log" For Input As fileNum%
Do While Not Eof(fileNum%)
doc.Form = "Imp22"
' Einlesen der Zeile
Line Input #fileNum, txt$
Print "Einlesen von Zeile: "+counter
' ANSI-Format vergeben
Call Ascii2Ansi(txt$)
' Neuen Eintrag ins Dokument
Call rtitem.AddNewLine(1)
Call rtitem.AppendText(txt$)
counter = counter + 1
Loop
Print "Einlesen beendet, gelesene Zeilen: "+counter
Call doc.Save( False, False )
End Sub
############
Function Ascii2Ansi(inputString As String) As String
Dim inputChars(7) As String
Dim outputChars(7) As String
'ASCII Codes
inputChars(1) = Chr(142)
inputChars(2) = Chr(153)
inputChars(3) = Chr(154)
inputChars(4) = Chr(132)
inputChars(5) = Chr(148)
inputChars(6) = Chr(129)
inputChars(7) = Chr(225)
'ANSI Chars/Codes
outputChars(1) = "Ä"
outputChars(2) = "Ö"
outputChars(3) = "Ü"
outputChars(4) = "ä"
outputChars(5) = "ö"
outputChars(6) = "ü"
outputChars(7) = "ß"
Dim i,x As Integer
Dim NewSign As String
Dim dummy1, dummy2 As String
For i = Lbound(inputChars) To Ubound(inputChars) x = Instr(1,inputString,inputChars(i))
While x <> 0
dummy1 = Left$(inputString, x - 1)
dummy2 = Right$(inputString, Len(inputString)-x)
inputString = dummy1 & outputChars(i)&dummy2
x = Instr(1,inputString,inputChars(i))
Wend
Next
Ascii2Ansi = inputString
End Function
############