我从Oracle数据库导出txt文件内容的编码默认是asni,我想使它变成utf-8编码,请问如何写代码啊?
如:
procedure TForm1.Button1Click(Sender: TObject);
var S:string;
begin
with TMemoryStream.Create do try
S := #$EF#$BB#$BF;
Write(S[1], Length(S));
S := AnsiToUtf8('我来试试编码转换');
Write(S[1], Length(S));
Position := 0;
SaveToFile('c:\test.txt');
finally
free;
end;
end;
end.这只能转化一条字符串,那么整篇txt该如何转化呢?谢谢
如:
procedure TForm1.Button1Click(Sender: TObject);
var S:string;
begin
with TMemoryStream.Create do try
S := #$EF#$BB#$BF;
Write(S[1], Length(S));
S := AnsiToUtf8('我来试试编码转换');
Write(S[1], Length(S));
Position := 0;
SaveToFile('c:\test.txt');
finally
free;
end;
end;
end.这只能转化一条字符串,那么整篇txt该如何转化呢?谢谢
var
t:TStringList;
s:string;
begin
t:=TStringList.Create;
t.LoadFromFile(你的文件);
s:=AnsiToUtf8(t.txt);
t.clear;
t.Add(s);
t.savetofile(新文件);
t.free;
end;
var
stm: TStream;
txt: string;
begin
stm := TFileStream.Create('d:\abc.txt', fmOpenReadWrite);
try
SetLength(txt, stm.Size);
stm.Position := 0;
stm.Read(txt[1], stm.Size);
txt := AnsiToUtf8(txt);
stm.Position := 0;
stm.Write(txt[1], Length(txt));
finally
stm.Free;
end;
end;