Ich wollte mir gerade eine kleine Funktion basteln, welche mir meine UTF8 Texte unter Linux in Iso8859 Texte für Windows Umwandelt.
Also habe ich folgendes ergoogelt :
Code: Alles auswählen
Var
f_: File Of byte;
s: String;
i: integer;
b: Byte;
Begin
If savedialog1.execute Then Begin
// s := ConvertEncoding(memo1.Lines.text, EncodingUTF8, EncodingAnsi);
s := ConvertEncoding(Synedit1.Lines.text, EncodingUTF8, 'iso88591');
assignfile(f_, savedialog1.filename);
rewrite(f_);
For i := 1 To Length(s) Do Begin
If s[i] = #10 Then Begin
write(f_, 13);
write(f_, 10);
End
Else Begin
b := ord(s[i]);
write(f_, b);
End;
End;
closefile(f_);
End;
End;
Nun bin ich aufgeschmissen, denn ich verstehe absolut nicht was ich falsch gemacht habe. In beiden Projekten stehen die Kompilerswitches aufunit1.pas(845,17) Error: Incompatible type for arg no. 1: Got "File Of Byte", expected "LongInt"
Kann mir hier jemand sagen was ich falsch gemacht habe ?{$MODE objfpc}{$H+}