使用富文本编辑器TRichView加载Unicode UTF-8文件的方法(附代码)
在TRichView中运用Unicode进行编码,有利于简化软件的本地化并改进多语言文本进程,防止数据损失。但TRichView中不是所有字符串都是Unicode码制,这取决于文本样式的 Unicode属性,文本可能是Unicode也有可能是ANSI,也可能是两者混搭。将文本样式的Unicode属性设置为True(注意:改变属性时文本必须为空),就能启动Unicode编码。下面是我使用TRichView用代码的形式加载TRichView Unicode UTF-8文件的一段小程序,希望大家不吝赐教。
procedure LoadUTF8(rv: TCustomRichView; const FileName: String;
StyleNo, ParaNo: Integer);
var Stream: TFileStream;
s: TRVRawByteString;
ws: TRVUnicodeString;
begin
Stream := TFileStream.Create(FileName, fmOpenRead);
SetLength(s, Stream.Size);
Stream.ReadBuffer(PRVAnsiChar(s)^, Stream.Size);
Stream.Free;
rv.Clear;
ws := UTF8Decode(s);
rv.AddTextNLW(ws, StyleNo, ParaNo, ParaNo, False);
end;
调用:
LoadUTF8(RichViewEdit1, 'test.txt', 0, 0);富文本 TRichView 超文本文档 --------------------编程问答-------------------- 什么问题?RTL本就支持加载Unicode UTF-8文件的。
RichViewEdit1.Format;
补充:.NET技术 , 其他语言