delphi中的unicode转换


本文整理自网络,侵删。

 delphi7调用delphi2009生成的dll文件会出现乱码问题。是unicode的原因
终于从爱点delphi中找到了转换函数

function AnsiToUnicode(s:string):WideString;
var
lpWideChar:PWideChar;
len:Integer;
begin
len := ( Length(s) + 1 ) * 2;
GetMem(lpWideChar, len);
ZeroMemory(lpWideChar, len);

MultiByteToWideChar(CP_ACP,MB_PRECOMPOSED,
PChar(s), Length(s),lpWideChar, Len);

Result := lpWideChar;
FreeMem(lpWideChar);

end;


function UnicodeToAnsi(s:WideString):string;
var
lpChar:PChar;
len:integer;
begin
len := Length(s) * 2;
GetMem(lpChar,len);
ZeroMemory(lpChar, len);
WideCharToMultiByte(CP_ACP, WC_COMPOSITECHECK, PWideChar(s),
Length(s),lpChar,Len, nil, nil );

Result := lpChar;
FreeMem(lpChar);
end;

相关阅读 >>

Delphi 判断文件是否被使用

Delphi 组件值实现增减

Delphi fdmemtable1 清空

Delphi 的按位运算详解

Delphi 判断字符是否是数字

Delphi tbitmap创建时提示object or class type required

Delphi - system.runerror

Delphi自动检测u盘插入、拔出及获取u盘盘符

Delphi清除ie临时文件,历史记录

Delphi webbrowser 去除滚动条和边框

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...