DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: ahttp123
今日帖子: 22
在线用户: 10
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 qhq (qhq) ★☆☆☆☆ -
普通会员
2006/1/10 23:17:38
标题:
UTF8编码写入exe问题 浏览:1158
加入我的收藏
楼主: 以下代码写入的时候总是无发正常写入UTF8编码的字符串
总是3个字节一个00

function WriteBlock(Filename: String;Sname:AnsiString;RStart:Integer): String;
var
   Buf: array of Char;
   f:file;
begin
   fillchar(Buf,SizeOf(Buf),0);
   Assignfile(f,Filename);
   reset(f,1);
   seek(f,RStart);
   Sname:=ANSIToUTF8(Sname);
   SetLength(buf,Length(Sname));
   StrpCopy(@buf[0],Sname);
   blockwrite(f,buf,Length(Sname));
   Closefile(f);
end;

procedure TForm1.Button2Click(Sender: TObject);
var
   Sname:AnsiString;
begin
      Sname:=(edit5.text);
      WriteBlock(filep,sname,$8DD3C8);  
end;
----------------------------------------------
-
作者:
男 51sh (51sh) ★☆☆☆☆ -
盒子活跃会员
2006/1/11 8:38:03
1楼: 你转来转去,还是AnsiString!
----------------------------------------------
-
作者:
男 iamdream (银河恒久远,梦想无止境!) ★☆☆☆☆ -
大贡献会员
2006/1/11 13:39:46
2楼: blockwrite(f,Pointer(buf)^,Length(Sname));
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行78.125毫秒 RSS