关键字 包含以下全部的字词:
包含以下任何一个字词:
 
搜索结果:有780条符合条件的记录,共1页,耗时93.75毫秒 第一页 上一页 下一页 最后页

回复:……ing.UTF8);

  stm.Position := 0;
  try
    IdHTTP1.Post('https://bcfp.shenzhen.chinatax.gov.cn/dzswj/bers_ep_web/query_bill_detail', send , stm);
    rzmemo1.Lines.Text:=stm.DataString; //服务端返回的内容
  except
    exit;
  end;
  stm.Free;
  send……
作者:bird13 时间:2024/4/23 11:00:25
 
主题:请教PByte、 array of byte和TArray<Byte>怎么传参和赋值
摘要:这个写法不对,赋值不行
procedure TForm37.fun(p1: TArray<Byte>; out p2: TArray<Byte>; p3: PByte;p4:array of byte);
var
str:string;
begin
str:='hello';
   p1:=tencoding.UTF8.GetBytes('hello');
   p2:=tencoding.UTF8.GetBytes('hello');
move(str[1],p3^,leng……
作者:ksrsoft 时间:2024/4/7 14:22:50
 
主题:请教对tnethttpclient返回的流解压缩
摘要:……ing.UTF8);
      try
        ss.CopyFrom(ds,ds.Size);
        Result.Text:=ss.DataString;
      finally
        ds.Free;
        ss.Free;
      end;
    end
    else
    begin
      Result.Text:=Response.ContentAsString(TEncoding.GetEncoding(……
作者:cenunus 时间:2024/3/26 22:50:55
 
回复:不知道你们在讨论啥……这种情况下,就别用现成的XML解析类来做了呗。先把 XML 文本当作 ansi 即可,自己解析出字符串,再尝试用UTF8或者ANSI或者其他来转换即可。哪一种类型转换不出错就是哪一种喽
作者:bighawk 时间:2024/3/12 11:45:22
 
回复:GB18030和GB2312是不一样的哟,你可以把这个GB18030看作国产的UTF8,具体资料可以去查一下。
windows系统可以直接用multibytetowidechar函数转换,参数指定18030编码就是了。
linux则可以根据local函数配套转换,也就是setlocal(...)配合mbstowcs函数,
delphi里应该也会有对应的函数,查一下就没问题了。
作者:bahamut8348 时间:2024/3/11 23:45:42
 
回复:源生文件就是GB18030的,只是我看基本都用的双字节GB2312部分。
300MB+的XML文件,而且是多个,几乎每天都会更新,转utf8太费事了。
作者:yookee 时间:2024/3/11 19:10:04
 
回复:gb2312包括后续扩展的gbk其实都可以直接当作ansi处理的,如果出乱码就说明你这个编码不对。至于你说的截断,应该是全角字符占2BYTE,但是你计算长度的时候没有区别导致从中间截断而出现乱码吧?
先转成utf8或者utf16也就是widestring,然后就不会有这种问题了。
作者:bahamut8348 时间:2024/3/11 18:20:47
 
回复:……ing.UTF8); //创建一个TStreamReader对象,使用UTF8编码打开TXT文本文件
  try
    TextList.LoadFromStream(Reader.BaseStream); //从流中读取文本内容到TStringList对象中
  finally
    Reader.Free; //释放TStreamReader对象
  end;
  SplitPages; //将TXT文本分割成多个页面
end;

procedure TForm1.ShowP……
作者:qq81709989 时间:2024/2/19 22:19:34
 
回复:楼主的代码里主要有四个问题,已解决:

1、公私钥使用时不慎搞反了。
2、待签名内容使用了UTF16编码,和网站上验签的对不上号。
3、网站要求公钥带04前缀,公钥分别X、Y输出时没这前缀,改成直接用ToHex方法才能满足这个要求。
4、待签名内容有汉字时,需用UTF8编码,无则可以用Ansi。
作者:cnpack 时间:2024/2/8 12:12:53
 
回复:……ing.UTF8.GetBytes(content);
    if CnSM2SignData('1234567812345678', contentBts, SignRes, PrivateKey, PublicKey, SM2) then
    begin
         result := SignRes.ToHex(SM2.BytesCount);
    end;
end;……
作者:ksrsoft 时间:2024/2/1 11:13:33
 
回复:找到了 var retBts:= SHA256Bytes( tencoding.UTF8.GetBytes(strin) );
作者:ksrsoft 时间:2024/1/31 14:23:29
 
回复:请教一下:这里的【签名】是一个什么概念?比如楼上提到的对一个字符串签名,是否就是拿自己的私钥去加密这个字符串?--- 暂时不讨论 UTF8 或者 BASE64 之类的编码。
作者:pcplayer 时间:2024/1/30 18:14:41
 
回复:cnvcl/Example/VCL/SM2的例子看了吧?
首先是公私钥,要确定如何加载,是pem格式的文件中加载,还是设置十六进制、还是设置Base64

其次是签名,字符串要确定通过何种编码转换成被签名内容,一般是UTF8

C1C3C2和C1C2C3模式,CnSM2都支持,具体可以看看例子中的
btnSM2SignFileClick函数,那是针对文件内容签名的,内部把文件加载成了TBytes,你照着改改把字符串通过UTF8编码转成TBytes去签名就行。
作者:cnpack 时间:2024/1/30 13:37:16
 
回复:如果已经通过TSqlDBXXXXDBMSSQLConnectionProperties建立了数据库连接,那么就可以直接执行sql来返回结果了,例如调用ExecuteInlined(RawUtf8(sql), true)返回一个ISqlDBRows接口,再  
  while true do
  begin
    var jsonStr := string(rows.StepAsJson());
    if jsonStr = '' then Exit;
    ...
  end;
……
作者:jjwwang 时间:2024/1/27 1:04:13
 
回复:谢谢楼上兄弟们的解答,网上的那个文件,是我自己主页上的。我后来弄好了。用7zip加了一个参数,让他自动按照utf8的格式来打包了。
作者:zhouying 时间:2024/1/2 14:04:58
 
回复:旧的ZIP格式只支持ANSIC格式的文件名,后来才增加了UTF8的标识,是否启用这个标识是在ZIP文件头里面。然而如果是旧ZIP格式压缩出来的文件,解压的时候是不知道编码的,有可能出现乱码。
作者:wr960204 时间:2024/1/2 10:03:42
 
主题:D7下使用NativeXml单元生成含有中文的xml如何才能保存为utf8编码的
摘要:D7下使用版本为4.0.7的NativeXml单元(应该是最新版本了吧)
使用XmlDoc.SaveToFile('2.xml');保存为xml文件,若是里面都是英文的则没有问题,但若是有中文内容,使用浏览器打开则显示下图,用记事本打开显示编码格式为ANSI,只要另存为UTF8编码格式,再用浏览器打开就正常了,
请问要如何操作才能保存出一个编码格式为utf8的xml文件

之前加了
   xml.ExternalEncoding := seUTF8;
   Xml.CharSet := '……
作者:ken0137 时间:2023/12/29 9:45:17
 
主题:分析型数据库DuckDB功能好强大,跨平台(windows、macOS、Linux), 文件小,还免费,Delphi中如何像SQLite那样完全嵌入到程序中
摘要:…… 使用 utf8proc 库来检查和规范化 UTF8
排序规则和时间:DuckDB 使用 ICU 库来支持排序规则、时区和日历。
测试框架:DuckDB 使用 Catch2 单元测试框架。
测试用例:我们使用 SQLite 的 SQL 逻辑测试来测试 DuckDB。
结果验证:Manuel Rigger 使用他出色的 SQLancer 工具来验证 DuckDB 结果的正确性。
查询模糊测试:我们使用 SQLsmith 生成随机查询以进行其他测试。
JSON 解析器:我们使用 yyjson……
作者:kylix2008 时间:2023/12/2 17:49:34
 
主题:Cnpack使用sm2加密UTF8
摘要:我使用Cnpack里面的sm2签名后,在第三方网站验签不通过,怀疑是utf8编码的问题,下面是我的代码,用过的大佬帮我看一下
  MSG2: String = 'biz_content={"out_trade_no":"123456789","seller_name":"银盛支付服务股份有限公司行业发展部",'+
  '"total_amount":"2.99","subject":"公众号","is_minipg":"1","appid":"wxf71930fbcc125f64","timeo……
作者:wuxi15 时间:2023/11/6 13:14:43
 
回复:……
  LUTF8Buffer, LSourceURLUTF8UTF8String;
  LImgLabel: UTF8String;
  LSrcLen: Integer;
  sss: string;
begin
  if AClear then Clear;
  LSourceURLUTF8 := UTF8String(StringOf(TEncoding.Convert(TEncoding.Default, TEncoding.UTF8, BytesOf(ASourceURL))……
作者:ying32 时间:2023/11/28 13:20:07
 
回复:@kentty 收到。这个会反馈下。因为最低支持版本XE3了,改成UTF8应该是没问题的。
D12的话,之前有兼容性问题。现在是已经修正了,可以去下载下最新版本试一下。
作者:kngstr 时间:2023/11/21 18:06:35
 
回复:之前一直在用QWorker和QJson,希望越来越好

最近重新装D12的遇到一个问题,
貌似QDAC的代码文件编码方式是GBK或者GB2312,
英文Win系统环境下(还没设置locale为中文之前)
在D12 IDE里面打开代码文件,
非英文字符都是乱码,自然也就编译失败
手工调整了几个文件后无奈放弃了

如果的确是这个原因,希望新版能考虑代码文件编码方式改成UTF8
作者:kentty 时间:2023/11/21 15:52:07
 
回复:……ing.UTF8.GetBytes('你好,大D');
 // s:=TEncoding.Default.GetBytes('你好,大D');
  var ctext:='';
  for var I :=0 to Length(s)-1 do
   begin
     cText:=cText+inttohex(Ord(s[I]));
   end;
  Self.Memo1.Lines.Add('Data='+cText);

  // 里头的随机数 K 要 6……
作者:wuxi15 时间:2023/11/7 18:21:04
 
回复:如果怀疑是utf8编码的问题,可以去掉待签名内容中的汉字试一下。
作者:cnpack 时间:2023/11/7 10:36:41
 
回复:也许是UTF8的问题,我试一下看看
作者:wuxi15 时间:2023/11/6 12:13:28
 
回复:是用这个。注意待签名内容可能要UTF8编码。
作者:cnpack 时间:2023/10/30 21:10:54
 
回复:CnPack因为要支持D5起的非Unicode版编译器到D11.3的Unicode编译器,故把编码事宜交给了调用者处理,内部不使用强制UTF8

给出的例子中的默认编码用的是Ansi,例子中本身可以修改成UTF8来使用验证。
作者:cnpack 时间:2023/10/1 22:18:46
 
主题:修正TMS AdvPDFLib创建PDF时标题、主题是乱码的方法
摘要:  用TMS创建PDF遇到的问题,PDF的meta信息都是乱码。
  分析后发现就是字符串编码的问题,meta信息应该用UTF8的字节码。
----------
  单元文件:unit AdvPDFLib.General;
  涉及到的代码段:
  procedure WriteUTF8String(const StrValue : String);
  var
    UTF8_buf1, UTF8_buf2 : TBytes;
  begin
    UTF8_buf1 := Byt……
作者:vkow 时间:2023/9/21 12:04:58
 
回复:……ing.UTF8.GetString(RevBuff);//UTF8
  end;
end;……
作者:janker 时间:2023/9/19 20:05:36
 
主题:THTTPClient 用post发送失败
摘要:……ing.UTF8);
   jsontoget.Position:=0;
   ……
作者:slan06 时间:2023/9/6 9:05:04
 
回复:maybe using create your unit-files as NON-ANSI ?  

UTF8 / UNICODE ... ?
作者:emailx45 时间:2023/8/19 21:23:35
 
回复:d2007编码是ansi,xe是utf8
作者:szlbz 时间:2023/8/17 11:38:01
 
回复:……et="UTF8"/> 这样的信息。既然它是标准,那么不管什么语言,处理 HTML 的代码,就都会处理。如果没有这个标准,一个语言处理这个信息时认为它应该在头部(<head>),另外一个语言处理这个信息时认为它应该在 <Body> 部分,那么 A 程序输出的 HTML 给到 B 程序也没法正确处理。

因此,你要的不是仅仅输出数据,而是输出的数据的 JSON 格式,符合你目前面对的需求环境,比如,假设你目前需要对接某个其它的系统,不管这个系统是用什么语言开发的,你需要搞明白的是那个系统需要的数据结……
作者:pcplayer 时间:2023/8/14 1:12:39
 
回复:因为XP和Win9x比较接近,Win9x对Utf8支援度并不怎么好,可以说完全不支援。
作者:stacker 时间:2023/8/8 21:43:45
 
回复:程序用utf8或者unicode不好么 非要ansi编码
那你要显示日文怎么办, 就变成日文系统好了?
你这么干 一个简中的软件再繁体系统上一样不能正常显示
作者:hs_kill 时间:2023/8/8 8:48:51
 
主题:开放源码的CnPack IDE 专家包发布1.2.7.1138正式版!
摘要:……正一处 Utf8 转换导致乱码的问题。
* 其他错误修正与改进。

(下载页面除github发布链接外,也新增了国内的gitee发布链接,方便国内的朋友下载)……
作者:cnpack 时间:2023/7/15 22:51:57
 
回复:Java默认Utf8编码, cnpack使用Ansi编码, 对英文字符串进行加密两者一致, 但对中文字符串会不一致.

TSM4默认使用Utf8编码
作者:bluestorm8 时间:2023/7/14 13:02:54
 
回复:……ing.UTF8);
          except
          on E: Exception do begin
          TemStrQ.Position := 0;
          ExecLines.Clear;
          ExecLines.LoadFromStream(TemStrQ);
          end;
          end;

          // 识别异常.
          if (ExecLines.C……
作者:tuesdays 时间:2023/7/7 13:59:58
 
回复:感谢:)

有几个问题:

Linux+Lazarus+Postgres,SQL选出日期型数值为0。问题依旧……
用asDateTime时会报:“Invalid floating point operation”
940,930,911问题一样。

Postgres,设置Charset=GBK(理论上是通信时的字符集),
中文报错:“无效的"UTF8"编码字节顺序: 0xXX”
940,930问题一样。必须设为UTF8
911可以正常设置GBK或UTF8

MySQL,设置C……
作者:ddrfan 时间:2023/7/5 15:59:53
 
回复:试了一下,这个问题:
[url=http://bbs.2ccc.com/topic.asp?topicid=632124]《【delphi+unidac+openGauss】取日期问题》[/url]
没解决。

目前发现各种鱼丸粗面组合下,都有可能有问题。
比如Lazarus+Linux+Postgre下asDatetime是0值。疯了……

其次9.3.0似乎PostgreSQL的Client Charset不能再是GBK了,必须UTF8
这个在9.1.1版本是正常的。

看来它和……
作者:ddrfan 时间:2023/6/8 10:22:10
 
回复:C语言H头文件转换成delphi文件:

unit HalconCLib;

{$MINENUMSIZE 4}

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Classes;

const
  HalconDll = 'halconc.dll';

type
  PPUTF8Char = ^PUTF8Char;
  {$IF Defined(WIN64)}
  I……
作者:denis 时间:2023/5/31 11:00:03
 
回复:
以下是打开不同编码文本文件的代码(D10.4):
const
  tfAnsi = $0000;
  tfUnicode = $FFFE;
  tfBigEndianUnicode = $FEFF;
  tfUtf8 = $EFBB;
var
  fs: TfileStream;
  sl: tstringlist;
  txtformat: word;

  function WordLoHiExchange(w: word): word; register;
  asm
……
作者:tuao 时间:2023/5/30 22:15:14
 
主题:使用TNetHTTPClient.Post数据失败,求助!!!
摘要:…… // utf8进gbk出
        // Memo1.Lines.Add('post:' + TNetEncoding.URL.UrlDecode(vS.DataString));
        Memo1.Lines.Add('post:' + vS.DataString);
      except
        on E: Exception do
          // Error sending data: (12002) 操作超时.
          /……
作者:porter520 时间:2023/5/22 14:20:42
 
主题:使用TNetHTTPClient.Post数据失败,求助!!!
摘要:var
  SndStrm : TStringStream;
  NetHTTP : TNetHTTPClient;
begin
  SndStrm := TStringStream.Create(ARequest, TEncoding.UTF8);
  SndStrm.Position := 0;

  NetHTTP := TNetHTTPClient.Create(nil);
  try
    NetHTTP.ConnectionTimeout := 10000;
    Ne……
作者:nieyv 时间:2018/11/15 14:58:44
 
回复:tmeminifile了解一下, 跨平台, 自己实现ini读写, 支持utf8
作者:hs_kill 时间:2023/4/25 8:40:50
 
回复:……ing.UTF8);
  try
    try
      xRequestBody.Position := 0;

      idHTTP.Post(TokenURL, xRequestBody, responseData);
      {...}
    except
      on E: Exception do
        ShowMessage('Error on request: ' + #13#10 + e.Message);
    end;
  ……
作者:twg1 时间:2023/4/4 22:49:11
 
回复:感谢各位的跟贴,问题解决了,是superobject对象的问题。ansitoutf8的值传给su.S['text'],可能赋值的时候对象转了编码。最后放弃superobject生成json串,直接自己写,再转utf8就没问题了,服务端不再报错。
作者:baby_moon 时间:2023/3/15 15:53:28
 
主题:有人遇到过ansi转utf8再转回来转不了的吗?
摘要:ansitoutf8转完按字节分析是对的,但是utf8toansi转回来就是空串。用win API互转,转回ansi中间出现问号。有人遇到过吗?
作者:baby_moon 时间:2023/3/13 17:59:46
 
回复:SO中的字符串是WideString(D2009开始是UnicodeString),Utf8也是一种AnsiString,AnsiToUtf8把LocalAnsi转成Utf8Ansi了,导致后面隐式转成WideString是用Utf8Ansi来转而不是LocalAnsi来转所以出错,其实给SO赋值可以不用转,或者也可以直接赋宽字符串:
var
  LUtf8Str: UTF8String;
  
su.S['text'] := S;  // LocalAnsi -> WideString
L……
作者:flcop 时间:2023/3/15 11:31:25
 
回复:https://www.cnblogs.com/zhiyewang/p/5209000.html
WCHAR *pwText =NULL;
char *pchUtf8=NULL;

整个json就S['text']行或者 其他类似的才是utf8也是不对的,虽然符号uft8 ansi通用保不齐出问题呢。
 su.S['text'] := 然后确认这个内存结构和下面的那里不对,是否换byte来接收?
AnsiToUtf8(S);先确认这个转出来内存结构对不对
我觉得你是要转完发送到api……
作者:keymark 时间:2023/3/15 10:27:27
 
回复:UTF8后的内容最好用TBytes或RawByteString容纳,不要用AnsiString,否则UTF8中的内容被当做非法Ansi字符时有可能会破坏掉部分内容(出现问号),导致再转回就不准确了。
作者:cnpack 时间:2023/3/14 22:10:10
 
回复:  su := SO();
  su.S['text'] := AnsiToUtf8(S);
  if Debug then
  begin
    Log('test original     = ' + S);
    Log('original length   = ' + IntToStr(Length(S)));
    Log('test ansi to utf8 = ' + su.S['text']);
    Log('test utf8 to ansi……
作者:baby_moon 时间:2023/3/14 14:57:23
 
回复:是的,delphi ansistring 可以装任何字符(ansi/mbcs 等),某些字符在 utf8 转码过程中由于缺少本地(如中文 C_936.NLS 下)映射导致失败或丢失;如果要传递任意字符,建议 base64encode/decode
作者:lsuper 时间:2023/3/14 0:34:04
 
回复:ANSI =  1 char = 1 byte 
UTF8 =  1 char = +1 byte (2, 3, 4...)

0..127  = ANSI = UTF8
128 ... = ANSI <> UTF8
作者:emailx45 时间:2023/3/13 22:38:44
 
回复:不同端/平台/语言/实现的对称分组加密,要考虑的因素有很多: 

1、每块的加密算法(DES/AES/SM4等)
2、数据分块的每块大小(128/192/256等) 
3、块与块之间的运算模式(ECB/CBC/OFB/CFB等) 
4、数据不满足整数块时如何填充(PKCS1/PKCS7等)
5、密文是否要转变成可读的(Hex/Base64等) 
6、明文如果是字符串,加密时还有字符编码问题(UTF8/UTF16/Ansi等)

这六点基本上涵盖了对称加密的所有实战内容,如果碰到加解密对不……
作者:cnpack 时间:2023/3/12 18:06:33
 
回复:……_CN.utf8
LC_MESSAGES=en_US.utf8

localectl  set-locale LANG=zh_CN.UTF8
现在用下面的命令在 /etc 文件夹里生成 关于地区的配置文件:

echo LANG=en_GB.UTF-8 > /etc/locale.conf
export LANG=en_GB.UTF-8……
作者:keymark 时间:2023/3/1 16:49:25
 
回复:你的服务器端是 Linux 还是客户端是 Linux?

Linux 的字符集是 GB_2312 么?

如果客户端和服务器端都完全相同的环境下, FdQuery 没问题,那你试试你的 str 采用 UTF8 编码。

FireBird 我一般数据库字符集我都用 UTF8 这样保证同时存入中文英文德文和繁体字都不会有问题。

这里总之就是你的 str 的编码问题。
作者:pcplayer 时间:2023/2/27 20:45:31
 
回复:谢谢各位的指点,我终于搞定了.我的修改如下:

加密时:  要先将传入的文本,转为UTF8String
解密时:  接收结果的变量,必须定义为UTF8String

以下是我整理的UTF8的base64,与网页中的java一模一样的结果:







function kBase64Encode_UTF8(const S: String): String;
const
  BASE_64_CHARSET ='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef……
作者:aknightchen 时间:2023/2/25 11:58:37
 
回复:都转换成同一个字符集就好了。utf8或gbk。
作者:mystery 时间:2023/2/25 10:27:33
 
主题:utf8 字符集 的 SQLITE 数据库,如何解决写入 iso8859 字符新增ç”3报æ 乱码
摘要:1个utf8 字符集 的 SQLITE 数据库,写入含 æ 的字符串会乱码,
查网后得知是 iso8859 字符集,

写入代码:
Sql:='insert into table(ABC) values '+Str;

请问如何转码?  iso8859 -> utf8      /utf16

谢谢.
作者:ww1000 时间:2023/1/13 21:34:51
 
主题:Delphi第五天,求助,文件操作类
摘要:我做了一个UTF8文本编码转换ANSI编码的工具
现在有一个问题
浏览路径我用的Opentextfiledialog 进行多选操作
保存路径用的Extractfilepath 取得程序路径,并在当前目录下建立一个新目录
但是在一键转换这里,我有点不知道该用什么对象去执行操作了
比如点击一键转换
就应该是一个对象去读取Opentextfiledialog.Filename的所有文件
然后将所有的文件以ANSI编码格式全部保存到我指定的目录下
求大佬指点!
作者:michael20130904 时间:2023/1/13 1:53:06
 
回复:see here a sample about convert charsets using SQLite and Delphi

SQLite Character Encodings
Converting from ANSI to UTF8

https://1st.bitbumper.de/sqlite-ansi-utf8/
作者:emailx45 时间:2023/1/14 2:13:11
 
回复:procedure TForm1.Button1Click(Sender: TObject);
begin
  Memo1.Lines.LoadFromFile('d:\这种工具我干过还获取了系统支持的.这种', TEncoding.UTF8);
end;
作者:emailx45 时间:2023/1/14 1:30:37
 
回复:乱码不关这里事,只要你这里使用utf8就行,要在程序构建之初就指定 indy 套件使用一个编码,但我没在电脑前,忘了,回去找下。
作者:sail2000 时间:2023/1/2 15:51:14
 
回复:原因在于,你把对方传给你的UTF8字符,错当GB2312给解析了。。。。
作者:crystalmoon 时间:2023/1/1 20:42:27
 
回复:Easy....

Showmessage(TEncoding.UTF8.GetString(TEncoding.ANSI.GetBytes('QQ鎴浘20221212002717.png')));
作者:crystalmoon 时间:2023/1/1 20:40:56
 
回复:嗯, 我把"QQ截图20221212002717.png"存到notepad然后Save as用UTF8保存文件,查看文件二进制内容跟楼主给出"QQ鎴浘20221212002717.png"非常像.

楼主是否想试一下直接把收到的字符串用UTF8Decode, 也许就是那样.
作者:newbuyer 时间:2022/12/30 1:23:55
 
回复:hi @akightchen

did you tryed some like this?

uses
  idGlobal,  // line 1157.... IndyTextEncoding....
  IdMessageCoderMIME;

...
var
  LIdMsgDecodeMIME: TIdMessageDecoderMIME;
begin
  ...
  LIdMsgDecodeMIME.ReadLn(#10, IndyTextEncoding_UTF8)……
作者:emailx45 时间:2022/12/26 23:20:12
 
回复:……好久,用UTF8等乱转, 都试不对.)……
作者:aknightchen 时间:2022/12/24 19:35:13
 
回复:
uses
  System.SysUtils;


begin
  TEncoding.ANSI(Unicode,utf8) //使用这个记录方法就明白编码问题了
end;

参考下: https://blog.csdn.net/sensor_WU/article/details/125199637
作者:sensorwu 时间:2022/12/16 12:31:55
 
回复:直接对应算法?

uses Soap.EncdDecd 然后 EncodeString;如果内容中文可能要 utf8 再 EncodeBase64
作者:lsuper 时间:2022/12/15 15:53:39
 
回复:有BOM Byte Order Mark 的文件Delphi库能自动认. 没有的话就麻烦, 因为历史问题Windows以前没用BOM的就一般是ANSI, 而不是UTF8, 所以推荐用ANSI/ASCII, 还有你不清楚用户用了什么编辑器产生什么保存效果. 只能在有限代价的情况处理最合理的需求.
作者:newbuyer 时间:2022/12/12 23:52:08
 
回复:根本原因就是判断Encoding错误的问题, 如果没用BOM的确在Windows下判断是ANSI还是UTF8是很麻烦的事情,以前notepad默认是ANSI但是新版本的Windows也都默认UTF8(但是没用BOM). 对于FMX效果就是没用BOM也是默认UTF8.

虽然我没有试过, 但是我的建议是自己继承个TMemIniFile,Create方法在MSWINDOWS下LoadValues前预先读取现有文件几个字节判断是否BOM, 如果没有就把Encoding改成TEncoding.ANSI, 如果……
作者:newbuyer 时间:2022/12/9 1:05:24
 
回复:在 WINDOWS 底下,你的 ini 要用 ASCII 编码。但是,在安卓底下,必须用 UTF8 编码。

另外,如果是在 Android 底下,直接用 TIniFile 还不行。

请看:https://blog.csdn.net/pcplayer/article/details/120249280
作者:pcplayer 时间:2022/12/8 23:51:55
 
主题:firebird 4.0.2 ,character set=UTF8,执行下面的语句出错,换其他汉字就没事,求前辈指点
摘要:select '市' from RDB$DATABASE 

Engine Error (code = 335544569):
Dynamic SQL Error.
SQL error code = -104.
Unexpected end of command - line 186224992, column 150740606.

SQL Error (code = -104):
Invalid token.
作者:jianliulin 时间:2022/12/1 12:46:42
 
主题:Dephi 调用asp.net 的api返回数据格式不是json而是xml?
摘要:……需要进行UTF8解码
    ResponseStr := UTF8Decode(ResponseStr);

取得的结果集是xml格式的,是在原来json基础上增加了很多的xml的nr,实际该api返回的就是简单的json,修改哪里可以得到结果就是简单的json……
作者:tms2021 时间:2022/11/8 16:55:17
 
回复:文件名和文件内容一样,确实可以使用各种编码。
问题是文件名难道不该使用操作系统使用的文件名编码。

就算Windows下也可以不用GBK,能设成UTF8

但如果不使用操作系统的编码,显示乱码无所谓。
到传FTP之类需要转换编码的地方,鬼知道这个文件名是什么编码呢。

各种程序默认当然是用操作系统设置的编码。
所以tuesdays说的也不算错吧……

统一本来是好事儿,但是我们国家嘛,咳咳,总是有自己标准的。
上升到法律问题了。。。
作者:ddrfan 时间:2022/10/27 17:38:29
 
回复:1. 你要正确设置 FireDAC 里面和编码有关的属性。
2. 你检查一下,在设计期创建固定字段,看看字段类型是 string 还是 WideString
3. 我记得 SQLite 默认是 UTF8 编码,你要检查你的 SQLITE 的编码是什么。
作者:pcplayer 时间:2022/9/19 14:08:41
 
主题:delphi面向model编程
摘要:……ing.UTF8.GetBytes(TRest.delete2('tunit', 'unitid=''1'''));
  var r: TRes := TSerial.unmarshal<TRes>(res);
  if r.Status = 500 then
    ShowMessage('err: ' + r.Exception)
  else
    ShowMessage('ok');
end;

procedure TForm1.FormCreate……
作者:hnxxcxg 时间:2022/8/26 7:35:49
 
回复:都是编码惹的祸
其实我觉得在一般开发情况下没必要纠结字符串类型
大致可以认为字符串类型, 一种是开发用的(string/unicodestring), 一种是显示或对外输出用的(ansi/utf8/utf16...)

内部开发用unicode对内容进行各种处理, 需要对外输出时在转码到外部需要的编码字节流

如果是特殊处理, 比如大文本的分步加载, 这时再用对应编码的类型做处理, 这种应用一般不多(相对业务开发)
作者:hs_kill 时间:2022/8/18 8:43:13
 
回复:……ing.UTF8.GetBytes(content)));
 var res := TNetEncoding.Base64.EncodeBytesToString(@B[0], length(b));
 showmessage(res);
end;……
作者:yangyachao 时间:2022/8/9 8:38:28
 
回复:@pp0123

汉字编码是个头疼的问题,如果都用UTF8就万事大吉了。
关键问题是我国(中国)很多东西都有自己的国家标准,UTF8不是国标。
再举个例子,WIFI不是国家标准,WAPI才是(WTF?)

能在中国用的东西都必须支持国标,所以软件系统必须支持国家标准(GB),在编码上就是GB2312,GBK,GB18030。

PS:其中GB18030也是多字节编码(不是双字节)。

所以不是我们想用“旧式编码”。
实际我遇到的各个厂商虽没有成文的约定,但是传送文本数据都是GB,不是……
作者:ddrfan 时间:2022/8/5 16:17:33
 
回复:……需要指定UTF8就OK了(Linux默认编码),改为:

[quote]if (OCIEnvNlsCreate(&z_pOCIEnv, OCI_DEFAULT, 0, 0, 0, 0, 0, 0, 871, 871) == OCI_SUCCESS)[/quote]

可是这玩意儿已经用了几年了,所以其它程序必须得顺着它的来。
目前还没有机会换,但是机会近了……

希望LZ不要遇到这种问题(只需正确使用中文编码)。……
作者:ddrfan 时间:2022/8/5 16:05:48
 
回复:Delphi 2007还没支持UTF8吧。要使用Tnt元件才行。
作者:stacker 时间:2022/8/2 13:58:47
 
回复:如果不处理,delphi生成的json串汉字都是这种\xxx\xxx这种转义符号,这种转义符号在utf8里会显示为?
作者:sxqwhxq 时间:2022/7/17 7:54:11
 
回复:确实,解析不正确是delphi生成的json汉字编码有问题,同时保存的文本文件不是而utf8的,处理好后dataset就能从json里装入数据了。
作者:sxqwhxq 时间:2022/7/16 18:02:22
 
回复:here in Brazil, too! same "Locale" by default! = UTF8
作者:emailx45 时间:2022/7/16 5:42:25
 
回复:……ing.UTF8);
  finally
    MyHTMLPage.Free;
  end;
end;……
作者:emailx45 时间:2022/7/14 11:05:48
 
回复:@emailx45

The linux in WSL is neither Chinese nor other language by default.
it's C.UTF8 (a default lang and UTF8 charset).
at least my Ubuntu20 in WSL is in that way.

theoretically, it can not display Chinese chars (with out language support and……
作者:ddrfan 时间:2022/7/9 14:20:22
 
回复:……ing.UTF8);
for var _str in slist do
    begin //寻找XDG_DESKTOP_DIR 的配置变量申明入口 ,其为key = "value" 方式呈现
    if _str.Contains('XDG_DESKTOP_DIR') then
        begin
        var arr:=_str.Split(['=']);
        if Length(arr)=2 then
          begin
  ……
作者:zhoutler 时间:2022/7/3 16:11:41
 
回复:可参考 http://www.2ccc.com/article.asp?articleid=6642

CustomHeaders['名称']:='值'

还有就是需要注意 ContentType 的定义

如果你提交utf8编码的内容,需要先进行编码

http get方法强制urlencode编码,post等等则需要根据对方接口的要求进行编码或者原样提交。

你可以通过一些http截包工具去查看http包的内容,对比你自己请求时发送的内容,进行调整。
作者:star5 时间:2022/7/2 22:12:58
 
回复:你的中文,要看对方需要什么编码。

比如,UTF8, UTF16,等等。
作者:pcplayer 时间:2022/6/19 10:51:20
 
主题:如何在非简体中文系统上正确显示简体中文在TMemo上
摘要:有一文字档,编码为UTF8,只有一行数据,用TFile开启,内容是简体中文+英文,要在非简体中文系统上的TMemo上显示出中文而非乱码?请问如何设定?
作者:stacker 时间:2022/5/16 19:08:20
 
回复: TFile.AppendAllText(FileName, Logs, TEncoding.UTF8);
作者:luckyso999 时间:2022/5/17 11:10:25
 
回复:搞定了,原來只要改成AssignFile(TFile, FileName, CP_UTF8)就行了。
作者:stacker 时间:2022/5/16 19:30:24
 
回复:我尝试用TMemo.Lines.LoadFromFile(FileToLoad, TEncoding.UTF8)可以正确显示,但我不想用这种方式,我想用ReadLn的,请问如何处理?
作者:stacker 时间:2022/5/16 19:25:47
 
主题:用delphi开发微信支付和支付宝支付
摘要:……
  utf8UTF8String;
begin
  utf8 := '';

  Assert(FAppId <> '', '公众账号ID 不能为空!');
  utf8 := utf8 + 'appid=' + FAppId;
  
  if FAttach <> '' then
    utf8 := utf8 + '&attach=' + FAttach;

  Assert(FAuthCode <> '', '授权码 不能为空!');……
作者:wangpingdejiejie 时间:2020/11/26 11:14:59
 
主题:等这本书, 10月22日出版
摘要:Fearless Cross-Platform Development with Delphi: Expand your Delphi skills to build a new generation of Windows, web, mobile, and IoT applications

https://www.amazon.com/-/zh_CN/David-Cornelius-ebook-dp-B08S49WT1F/dp/B08S49WT1F/ref=mt_other?_encoding=U……
作者:pp0123 时间:2021/9/28 6:04:35
 
回复:to 步惊云,你导入数据的时候,要执行语句设置utf8编码之类的语句,然后再导入。估计导入工具提供这样的功能。
作者:nevergrief 时间:2022/4/24 21:36:05
 
回复:楼上,我也很奇怪。新建的sqlite是utf8的,然后从一个老数据库导入数据。然后用fmx编译一个程序管理这个数据库。
1、数据库一切正常,无论在windows下用sqlite expert查看,还是在linux(ubuntu、kylinx)下用sqlite dbbrowser查看都正常,而且均显示数据库字符编码是utf8
2、如果我把程序编译为win32,一切正常。
3、如果我把程序编译为linux x86,所有中文显示乱字符。如果我在linux里录入新的数据,则同一个表内,原始中文数据是乱字符……
作者:sxqwhxq 时间:2022/4/24 20:47:52
 
回复:我用 Delphi 在 SQLite 里面读写中文都没有问题啊。

唯一需要注意的是:
1. SQLITE 采样 UTF8
2. SQLITE 里面的字段用 NVarChar,不要用 VarChar;
3. 对应上述字段类型,Delphi 的 DataSet 里面的 Field 是 TWideStringField 而不是 TStringField;

其实,如果是中文的 WINDOWS,上述注意事项不用理会也不会有问题。但如果用其它系统,系统语言又可能不是中文,就要注意。
作者:pcplayer 时间:2022/4/24 19:52:31
 
回复:……ing.UTF8);
//    testVarLoop := cstMaxTest;
    testVarLoop := 50;
    Memo1.clear;
    Memo1.Lines.Add('SO 解析开始');
    tmp := GetTickCount;
    testso;
    Memo1.Lines.Add('SO 解析结束,耗时:' + inttostr(GetTickCount - tmp) + ' ms');
    Memo1.L……
作者:yagesalor 时间:2022/4/20 11:50:36
 
主题:fmx fastReport导出pdf中文乱码
摘要:数据库采用sqlite,编码采用utf8。编译为ubuntu,导出csv、html正常,导出pdf时中文乱码。
作者:sxqwhxq 时间:2022/4/19 13:25:03
 
主题:关于 APP 的多语言需要注意的事项
摘要:……要选择 UTF8,在 Delphi 里面对应的字段是 TWideStringField;

5. 上述问题在 windows 底下不存在。即便把 Windows 的系统语言设置为英文,也没有类似问题。……
作者:pcplayer 时间:2022/4/18 19:03:44
 
回复:开发linux(android是linux的子集)的程序,有两点要注意:
1、数据库应该是utf8的,否则中文乱码;
2、fmx linux是异步执行的,对话框并不会阻塞后续代码执行,所有要采取回调匿名方式将相关代码写在闭包内。
作者:sxqwhxq 时间:2022/4/19 9:08:54
 
回复:…… in UTF8 or UTF16, depending on the OpenMode connection parameter. When SQLite needs to compare or sort a character data, it has to know what rules to use for this. The rules are known as a collation.

SQLite has several build-in collations. None of t……
作者:emailx45 时间:2022/4/2 11:32:52
 
回复:使用utf8编码的数据库后没问题了
作者:sxqwhxq 时间:2022/3/26 20:31:40
 
主题:FMXlinux编译后,数据库中文乱码
摘要:在ubuntu 20.04中设置好delphi 11.1 Paserver,编译后运行正常,但从数据库中取出中文后显示在listbox里,内容全是?。同样的内容编译为win32和android正常。数据库没有使用UTF8字符集。请大师指导下,谢谢。
作者:sxqwhxq 时间:2022/3/24 14:21:29
 
回复:我从ubuntu官网下载安装的ubuntu 20.04,据说这个版本很稳定,对FMXlinux支持比较好。
银河麒麟kylin 内核也是ubuntu, locale -a是这样的:
kylin@kylin-VMware-Virtual-Platform:~/桌面$ locale -a
C
C.UTF-8
en_US.utf8
POSIX
zh_CN.utf8
zh_SG.utf8
kylin@kylin-VMware-Virtual-Platform:~/桌面$ 
把程序拷上去后也是乱……
作者:sxqwhxq 时间:2022/3/25 11:01:21
 
回复:你的gbk  gb 都没。转码都没希望
你看我的
zh_CN.gb18030
zh_CN.gb2312
zh_CN.gbk
zh_CN.utf8
? 
你的咋这么乱。。。
还是手工安装舒服

下面是      中国       gbk在utf8下显示
作者:keymark 时间:2022/3/25 10:44:19
 
回复:hxq@hxq-virtual-machine:~/桌面$ locale -a
C
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IL
en_IL.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.……
作者:sxqwhxq 时间:2022/3/25 10:38:25
 
回复:sybase我没接触过,哎。

基本原理是:

中文Windows用的是GB18030(GBK,GB2312)。
Linux默认是UTF8

最好不要改默认编码,会导致其它问题,一般都是需要我们的程序取兼容它们。

LZ截图中基本都是????这种。
不太像只错了一次编码(见:[url]https://blog.csdn.net/ddrfan/article/details/122303699[/url])
所以挺奇怪的。
作者:ddrfan 时间:2022/3/25 10:37:22
 
回复:……集定义为UTF8就没问题了。
明天试试再报告。
谢谢大师指导。……
作者:sxqwhxq 时间:2022/3/24 23:15:31
 
回复:locale -a
C
POSIX
zh_CN
zh_CN.gb18030
zh_CN.gb2312
zh_CN.gbk
zh_CN.utf8
[img]http://bbs.2ccc.com/faces/38.gif[/img]
locale
LANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MO……
作者:keymark 时间:2022/3/24 22:42:47
 
回复:如果要跨平台,在数据库字段里面,存储 UTF8 比较好。

楼主你可以自己试试数据库存储 UTF8 的字符串,在 WINDOWS 底下和 LINUX 底下,是否都能正确显示。

我自己用 FireBird 数据库,在 WINDOWS 底下,字符串我也用 UTF8,显示出来没有问题。
作者:pcplayer 时间:2022/3/24 21:53:43
 
回复:用 其他方法显示gbk编码 乱码正常

问题点
数据库取出来后被转码乱码了
还是数据库取出来就该乱码


建议先搞通 转码问题
utf8 gbk gb
确认能转, 毕竟是linux不是win
作者:keymark 时间:2022/3/24 19:12:28
 
回复:可不可以在这里改呢?把字符转换为utf8
 AText:=FDMemTable1.FieldByName('department').AsString;
 ListBox1.Items.Add(AText);
改ubuntu的中文字符集可能会导致更加复杂的问题
作者:sxqwhxq 时间:2022/3/24 15:00:47
 
主题:[失踪人口回归]MVCXE V3 RC1发布(Delphi Web 快速开发框架)
摘要:……字符集用utf8),使用Install目录下的fly_mysql.sql还原数据库fly,da_mysql.sql还原数据库da,ferry_mysql.sql还原数据库ferry
   并修改release\appsettion.json中ConnectionString内的数据库连接信息。
4,编译出5种server,可以按自己需要选择,在Delphi IDE中建议用Webborker.Console来调试程序。
   release\Webborker.Console.exe是用Indy实……
作者:drroc 时间:2022/2/27 11:21:39
 
回复:楼主,事情要一件一件的说。
目前未证实的仅是第3点,前面2点已经无需讨论了。
至于D11慢,也许解决不了,请参考第2点。

[b]1)D11字符串替换不慢,放到RichEdit界面非常慢。[/b]
上面的测试已证明。

[b]2)D7界面显示比D11快很多。[/b]
推测:D7效率高,很可能是不用考虑下列因素:
字符编码(无法LoadFromFile设置UTF8)。
32/64位。
跨平台。
单字节多字节(仅Ansi)。
但即使比D11快,D7弄到界面显示还是数量级的慢于直接处理……
作者:ddrfan 时间:2022/1/18 15:05:33
 
主题:请教一个FireDAC中文处理的问题
摘要:用FireDAC连MariaDB, FDConnection已经设置了CharacterSet=UTF8
用FDQuery查询一个自建的ACCOUNT表
SELECT NAME FROM ACCOUNT
能够返回有中文的记录,比如"中国"
但是用
SELECT NAME FROM ACCOUNT WHERE NAME='中国'
就返回空记录

我猜应该是编码方式的问题,但是又找不到问题点
请大神指教
作者:kentty 时间:2022/1/5 13:21:22
 
回复:现成能用的比较难找,不同端的分组加密考虑的因素有很多:

1、每块的加密算法(DES/AES等)
2、数据分块的每块大小(128/192/256等)
3、块与块之间的运算模式(ECB/CBC等)
4、数据不满足整数块时如何填充(PKCS1/PKCS7等)
5、密文是否要转变成可读的(Hex/Base64等)
6、明文如果是字符串,加密时还有字符编码问题(UTF8/UTF16/Ansi等)

网上找的代码,但凡有一处和所需的不一样,加密出来的结果就对不上号,还是得挨个去研究。
作者:cnpack 时间:2022/1/7 15:57:18
 
回复:就是这样的。数据库UTF8编码的时候,凡是TParam的字符型,都要用AsWideString赋值。FireBird数据库也是如此。
作者:zhoutler 时间:2022/1/5 21:24:04
 
回复:@dlfsystem utf8mb4能解决这个问题的话就太好了, 我看了数据表的生成sql,用UTF8字符集生成数据表缺省用的是utf8mb3_general_ci

我试试看,多谢
作者:kentty 时间:2022/1/5 17:10:02
 
回复:建立数据库的时候要选择是UTF8
作者:luckyso999 时间:2022/1/5 16:09:13
 
回复:就是内容的编码转换找不到对应的编码。检查一下,比如是否是utf8转Unicode或者utf8转ANSI,但是源不是UTF8之类的问题
作者:wr960204 时间:2021/12/27 11:10:41
 
回复:创建流时加TEncoding.UTF8
作者:slan06 时间:2021/12/20 15:57:29
 
回复:既然写了:
http.Request.CharSet := 'utf-8';
但是没看到你把 aParamstr 变成utf8
作者:nevergrief 时间:2021/12/12 2:29:34
 
回复:……ort UTF8,but our workflow platform only support GBK。。。
 //fmt.Fprintf(os.Stdout, "%s %s\n",AppName, AppVersion)
 ConsoleWriteLnGBK("%s %s", AppName, AppVersion)

 if cap(os.Args) < 7 {
  panic("Program Params not enough!")
 }

 InputPath := os.A……
作者:ddrfan 时间:2021/12/7 10:57:00
 
回复:@nevergrief
我也很希望是我哪里没考虑周全……
可是这些项目做了10多年了,时不时的都会想再看看,在试试。

比如上面提到的纯文本的读写,自己写个类,当时确实快了不少。
自以为处理得不错,后来才发现要兼容GBK,UTF8……改吧,兼容了,速度也和Delphi自带的基本没区别了。

至于内存方面,不会new delete几千万次。自己管理,分布申请,计算位置向里面放就会快很多。也不会给Hashmap设置不合理的初始大小等等。

哎,我只想表达各方面都想过了,试过了,还没发现大家提……
作者:ddrfan 时间:2021/12/6 16:55:44
 
回复:你的中文字符串可能需要编码为 UTF8,也就是1楼说的那种情况。
作者:pcplayer 时间:2021/11/24 16:28:26
 
回复:试试:
  postStream := TStringStream.Create(aEnctryPost, TEncoding.UTF8);
  或
  postStream := TStringStream.Create(aEnctryPost, TEncoding.ASCII);
作者:dbyoung 时间:2021/11/24 16:24:03
 
主题:蓝牙打印机使用esc指令发送16进制
摘要:ESC 指令如下 :

3.1  启用 黑标检测功能
【格式】  十六进制  1F   1B   1F   80   04   05   06   44
        功能:启用黑标检测功能。
        说明:·启用黑标检测功能打印机会检测热敏打印纸的黑标,如果使用的打印纸 
          不带有黑标,将会发出蜂鸣器警报报错。

使用如下命令打印怎么不行? 哪位指点一下?
 
 FSocket.SendData(TEncoding.UTF8.GetEncoding(936……
作者:akai1203 时间:2021/10/1 11:50:24
 
回复:……ing.UTF8)
          end
          else
          begin
          raise Exception.CreateFmt('Cannot get time. HTTP %d - %s',
          [LResp.StatusCode, LResp.StatusText]);
          end;
          finally
          LHTTP.Free;
          end;……
作者:wenyue0811 时间:2021/8/24 12:19:44
 
回复:@wr960204

总感觉这个办法 有点歪门邪道啊  先utf8编码 然后转Ansichar

所以不知道是不是有啥正确的用法我不会
作者:xiaobaosoft 时间:2021/7/30 8:54:26
 
回复:这应该和IDE如何解析数据有关,OutputDebugStringW在绝大多数情况下,并不会调用它本身,而是内部调用了OutputDebugStringA,这就导致了系统将字符串转自动成了Ansi字符串,这样当IDE从共享内存取得输出数据时,很可能首先尝试转化成utf8,如果失败则再尝试转成本地字符串或者Unicode字符串显示。以你的例子,"取"应该是以Ansi版的uft8格式显示了,所以就乱码了,当然了这个数据转成过程仅仅是猜测,因为IDE的代码并没有公开。
作者:flcop 时间:2021/7/27 15:10:25
 
回复:你的代码也要用utf8格式储存的,不然有可能也会失败
作者:stacker 时间:2021/7/26 11:17:48
 
主题:英文OS內的中文亂碼
摘要:1:環境英文版win10
2:問題:將一個UTF8的中文文件,轉成ASCII後存成ANSI檔。。

可是,在自已(中文WIN10)跑起來都是正常,也都是ANSI檔,但是在客戶端時,就沒法存成中文的ANSI檔,再怎麼存都是UTF8,且內文也都是亂碼(檔案COPY回中文WIN10內查看)。。。

搞到快瘋了,請教各位大大有解嗎?
作者:jihjun 时间:2021/6/23 19:48:21
 
主题:idhttp使用Post数据失败,有前辈来帮忙看一下什么原因,谢谢。
摘要:……ing.UTF8);
  postdata := TStringList.Create;
  try
postdata.Text := '{"carNo":"苏A12345","piTare":1000,"GW":2000,"time":202103231026}';   
 url:='http://127.0.0.1:8884/api/CarInfo';       //本地测试地址
    try
      IdHttp.Post(url,postdata,jsonToSe……
作者:xiaotianwangzi 时间:2021/4/14 16:50:04
 
主题:delphi的AES和c#、网页加密的结果保持一致
摘要:……ext.UTF8Encoding.UTF8.GetBytes(strAesKey);
          Byte[] toEncryptArray = System.Text.UTF8Encoding.UTF8.GetBytes(str);

          System.Security.Cryptography.RijndaelManaged rDel = new System.Security.Cryptography.RijndaelManaged();
          rD……
作者:ksrsoft 时间:2021/3/31 22:19:41
 
回复:统一用UTF8不就好了
作者:wg961423 时间:2021/6/24 9:42:37
 
回复:编译没问题,有个pas要存成UTF8,但是控件的中文支持有问题。
作者:bamlan 时间:2021/6/23 23:42:37
 
回复:1楼的代码在纯英文系统下并不能达到预期目的,因为英文系统中默认代码页不是中文,所以转换出来的结果不对,必须用以下代码才可以:
procedure ConvertUTF8ToAnsi(const ASourceFile, ATargetFile: string);
var
  encoding: TMBCSEncoding;
begin
  encoding := TMBCSEncoding.Create(950); //950繁体中文,936简体中文
  try
    with TStri……
作者:iamdream 时间:2021/6/23 22:22:56
 
回复:感謝您
TStringList.LoadFromFile('...', TEncoding.UTF8);
TStringList.SaveToFile('...', TEncoding.ANSI);
這方式在中文win10 內存檔是正確的。
但是在客戶英文win10 存檔,一樣是UTF8。。。
delphi 版本是 10.4.2
作者:jihjun 时间:2021/6/23 22:20:14
 
回复:TStringList.LoadFromFile('...', TEncoding.UTF8);
TStringList.SaveToFile('...', TEncoding.ANSI);
作者:dbyoung 时间:2021/6/23 20:34:54
 
回复:……siToUtf8(strIn);   // 使用UTF8模式
    InputBuffer.Write(strIn[1], Length(strIn));
    InputBuffer.Position := 0;

    Crypto.SignDetached(InputBuffer, SignBuffer); // 签字
    SignBuffer.Position := 0;

    SetLength(strSign, SignBuffer.Size);
    Si……
作者:synnefo 时间:2021/6/21 21:44:26
 
回复:{
读写文件都可以指定编码,不用自己考虑转码问题。
写文件换行符自己指定,不要用WriteLN。
循环读一行写一行。

我最大只有大概5到6GB的文本,磁盘也没楼上那么快。。。
并且我实际情况是从“GBK”转到“UTF8”,从“回车换行”转为“换行”。

PS:
Windows通常是回车换行:#13#10 = 0D0A = CRLF
UNIX/Linux通常是换行: #10 = 0A = LF
MAC OS:不想说它……居然单回车。。。

代码供参考:
}

procedu……
作者:ddrfan 时间:2021/5/18 12:20:37
 
回复:回:hexi
前面的程序不只是转换个回车换行,是将文本编码从utf8转换为ANSI,ANSI中文编码是GB18030(向下兼容GBK与GB2312), 每个汉字utf8是三个字节,GB18030(GBK)是两字节,12G的utf8转换为Ansi (CP936)得到8GB大小的文件。

Delphi与Rust都属于没有垃圾回收机制的Native Code编程语言,都可以镶入汇编,在性能上应该有一比,更多的性能压榨可能取决于算法。

在多线程编程能力/处理效率这个维度上看,Rust比Delphi更有……
作者:c5soft 时间:2021/5/12 14:25:52
 
回复:亲,咱也是Delphi的老粉了,用Delphi写了20多年的程序。不过,楼主这活用Rust来写最适合。把一个12G的linux utf8格式的文本转换为Windows ANSI(GBK)格式文件在我的电脑上耗时不到2分钟。

Delphi目前仍有竞争力的场景就剩下写Windows下的GUI程序,继续使用VCL, FireMonkey是个鸡肋,搭配宇宙第一的报表控件FastReport,强大无敌。

写WebServer让位给Rust, 写网页前端让位给svelte。

Delphi语言特征(编……
作者:c5soft 时间:2021/5/7 10:59:20
 
回复:可以充分利用服务器多核大内存的处理能力,第一步将数据断行存到一个utf8编码的数组里,第二步,utf8转ansi, 启动并发处理,把cpu多核跑满,把utf8编码数组转换为ansi编码数组,第三步,讲数组用0D0A拼接成单个文件。

编程语言推荐用Rust, 第二步用async/await编写并行代码。

代码编写很容易,没有实际数据,不清楚转换需要多少时间。
作者:c5soft 时间:2021/5/1 22:10:55
 
回复:@bahamut8348
我断断续续改了N个版本了。都不行。

所以需要猜测各种可能的问题

UTF8 ansi 编码问题

下标问题。都已经试过。当然我水平比较差。没搞定
作者:xiaobaosoft 时间:2021/4/30 14:06:32
 
回复:Win7新建txt默认字符集是ANSI,win10默认是UTF8
作者:xiejiating 时间:2021/4/21 9:19:04
 
回复:安卓下不是utf8
作者:keymark 时间:2021/4/13 12:07:48
 
主题:aes-256-cbc 在Delphi的实现,我代码参考cnpack里,貌似算法有问题
摘要:nodeJS代码:
//加密 
 function encode(cryptkey, iv, cleardata) { 
 var encipher = crypto.createCipheriv('aes-256-cbc', cryptkey, iv), 
 encoded = encipher.update(cleardata, 'utf8', 'base64'); 
 encoded += encipher.final( 'base64' ); 
 return enco……
作者:yesin119 时间:2019/1/11 13:59:53
 
回复:……ing.Utf8;
  KeyBuff := TCryptographicBuffer.ConvertStringToBinary(KeyHs, Encoding);
  Key := AES.CreateSymmetricKey(KeyBuff);

  Rst := TCore_CryptographicEngine.Decrypt(Key, SrcBuff, nil);
  RstHs := TCryptographicBuffer.ConvertBinaryToString(Enco……
作者:ghs_79 时间:2021/4/1 18:09:22
 
回复:……ing.Utf8;
  KeyBuff := TCryptographicBuffer.ConvertStringToBinary(KeyHs, Encoding);
  SrcBuff := TCryptographicBuffer.ConvertStringToBinary(MsgHs, Encoding);
  Key := AES.CreateSymmetricKey(KeyBuff);

  Rst := TCore_CryptographicEngine.Encrypt(Key,……
作者:bluestorm8 时间:2021/4/1 13:11:25
 
主题:内网发短信的问题。
摘要:……ing.UTF8);

  //JsonToSend.SaveToFile('d:\SMs\json.txt');
  jsonToSend.Position := 0;//将流位置置为0

  aResult := IdHTTP1.Post(url, jsonToSend);
  aResult := UnicodeToChinese(aResult);


  Memo1.Lines.Text :=  aResult;

  jsonToSend.free; 
  Id……
作者:dlfsystem 时间:2021/3/5 18:13:40
 
回复:如果你明确知道各个段的字符串应该是什么,而且它对 HTTP 头有明确特殊要求,

那么,你完全可以自己拼字符串,来实现一个 HTTP POST,然后通过和服务器建立 TCP 连接,然后发字符串的方式,来试试。

我研究一个特定的 HTTP 服务的时候,通常就会这样做。这样做的好处是你明确知道发了一些什么,对方会有什么反应。

如果用 IdHTTP 控件,你也需要自己构造对方需要的 HTTP 头。那还不如自己构造然后用 TCP 发送。

包括字符串编码,比如是 UTF8,那是不是你的编码有问……
作者:pcplayer 时间:2021/3/5 19:52:12
 
主题:TNetHTTPClient使用的一些代码写成DLL,在D2007里调用,遇到问题
摘要:……ar; UTF8: Boolean): PAnsiChar;
var
  vHttp: TNetHTTPClient;
  vUTF8, vGBK: TStringStream;
begin
  Result := '';
  vHttp := TNetHTTPClient.Create(nil);
  vUTF8 := TStringStream.Create('', TEncoding.GetEncoding(CP_UTF8));
  vGBK := TStringStre……
作者:xlonger 时间:2019/11/13 11:14:15
 
回复:无意中找到问题原因:
  因为代码保存到 GITHUB 上,再拉取下来之后,
  文件编码自动变成 UTF8,文件格式变为 UNIX 了。
  文件修改为 ANSI 格式,文件格式修改为 Windows (CR LF) 就正常了。
  想想也对,UNIX 格式下,没有了换行。少了一行。当然错位了。
  
  10.3、10.4 都一样。
  再也不用“带病”工作了。你大爷的!
作者:dbyoung 时间:2021/2/22 21:46:26
 
回复:……set=utf8'; // 让汉字正确显示
{$ENDIF}
  Response.Content := cstHTMLBegin + RequestInfo(Request) + '<p>Name:' + cName +'</p>' +
    '<p>Phone:' +  cPhone +'</p>' +
    '<a href="/?' + Request.Content + '">返回</a>' +
    cstHTMLEnd;
end;

---……
作者:baifafa 时间:2021/1/14 17:10:57
 
回复:DELPHI 可以说弹性非常大,能高能低的开发工具,
底部跟OS,汇编,C的调用都非常轻松,把C编译成OBJ,或者DLL,声明连接后,就可以调用,只要你能力足够,可以干任何事!

高阶开发各类应用程序,不论是编译速度,执行速度,还是开发效率,都极高,还没有见过哪个开发语言这么全面。

OBJECT PASCAL语法,已经不是DELPHI7 之前的略带古板的样子,其写法和各类扩充,都是非常现代的语言风格了。
比如:
1)支持UNICODE ,UTF8等编码及无缝转换
2)支持指针算术运算,其……
作者:tony_trh 时间:2021/1/9 14:54:17
 
回复:to sail2000  emailx45 

嗯嗯,估计就是这原因,另外还有程序员习惯的问题。

可能早起的软件,本身编码就是ANSI,GBK之类的。并不是Unicode/UTF8之类。

Delphi 前面的版本,不也是这个样子的。。。

写入时,没转成Unicode...也可以说,人家为啥要转,人家写入进去,读取出来正常,就行了。。。
作者:likefxl 时间:2021/1/8 0:50:47
 
回复:……g = UTF8
Encryption mode = <unencrypted>
Cache size = 10000……
作者:emailx45 时间:2021/1/6 10:07:12
 
回复:试试如下
   fdConn.Params.DriverID := 'SQLite';
   fdConn.Params.Database := sqlstr;
   fdConn.Params.Values['CharacterSet'] := 'utf8';
   fdConn.Params.Values['OpenMode'] := 'CreateUTF8';
   fdConn.Params.Values['StringFormat'] := 'UniCode'……
作者:dlfsystem 时间:2021/1/1 0:51:20
 
回复:知道了,用pvRequest.GetRequestParam('method');不过要在前面加    // 解码Post数据参数
    {$IFDEF UNICODE}
    pvRequest.DecodePostDataParam(nil);
    pvRequest.DecodeURLParam(nil);
    {$ELSE}
    // 使用UTF8方式解码
    pvRequest.DecodePostDataParam(True);
    pvRequest……
作者:huangxing 时间:2020/10/13 20:12:42
 
回复:向各位汇报一下,编码问题已经解决,原来是自己多此一举,虽然设定了IndyTextEncoding_UTF8(),但发送的数据并没有进行编码,自己加了utf8编码后反而出了问题。测试了一下,接收到的数据也没有进行utf8编码。
作者:magiewang 时间:2020/10/11 14:24:48
 
主题:求教INDY编码问题。
摘要:请问INDY服务端CONNECT事件里:
    AContext.Connection.IOHandler.DefStringEncoding := IndyTextEncoding_UTF8();

设定了默认编码为UTF8,现在更换其他TCP组件,但客户端不能修改了。

请问按INDY这样编码,在其他TCP组件里,例如TTCPBlockSocket下,
SendString前应该做如何编码,我试着发送之前进行UTF8编码,但客户端没反应,应该是没收到或者编码不正确,客户端没有源码。
……
作者:magiewang 时间:2020/10/10 18:38:10
 
回复:如果内容主动做了 base64 编码之后已经是 ansi 了,在 utf8 内容不变的意义不大;还是建议抓包看真相
作者:lsuper 时间:2020/10/11 9:36:52
 
回复:服务端源码有的,服务端发送就是直接进行base64编码发送,但由于设定了AContext.Connection.IOHandler.DefStringEncoding := IndyTextEncoding_UTF8();,收到的并不是base64编码结果,说明indy 通过IndyTextEncoding_UTF8()又进行了编码,但我已经尝试在发送前进行utf8编码了,但显然结果和indy编码结果不同。
作者:magiewang 时间:2020/10/10 23:27:55
 
回复:如果你使用了正确的数据库控件,比如 FireDAC,如果你的数据库的 CharSet 和字段的 CharSet 使用的是 UTF8,那么,在 DBEdit 里面显示出来是没有问题的。

如果你从 DataSet.FieldByName('').AsString 拿到的是 UTF8 的编码字符串,在该字段的 OnGetText 事件里面自己转码一下也可以啊。也就是 DisplayText := UTF8Decode(Field.AsString) 类似的语句。

至于你说中文底下没问题,英文下有……
作者:pcplayer 时间:2020/9/23 10:44:52
 
回复:中文系统正常,是这样的:

utf8的编码为:瓒呯骇绠$悊鍛?
原始的字符为:超级管理员

英文系统是这样的:

utf8的编码为:Â3¬¼¶Â1ÃœÃÃ-Ô±
原始的字符为:3¬¼¶1üàíÔ±

问题就是英文系统下如何把原始的字符也转换为:超级管理员
作者:fenglijun 时间:2020/9/23 10:32:32
 
回复:utf8μıàÂëÎa:
上面英文系统获得的值,大家看看怎么转换
作者:fenglijun 时间:2020/9/23 10:17:54
 
主题:Delphi HMACSHA256有换行的字符时不一样问题
摘要:……ing_UTF8.GetBytes(salt);
    hash := hmac.HashValue(IndyTextEncoding_UTF8.GetBytes(value));
    Result := ToHex(hash);
  finally
    hmac.Free;
  end;
end;

在没换行的情况下,它加密出来的和在线加密的一样,但是只要有换行,它加密出来的就不一样了,我小白,不知道哪里出现了问题,请大佬帮忙,谢谢。……
作者:lightdc 时间:2020/9/16 14:55:45
 
回复:……ing_UTF8.GetBytes(salt);
      hash := hmac.HashValue(IndyTextEncoding_UTF8.GetBytes(value));
      Result := ToHex(hash);
    finally
      hmac.Free;
    end;
  finally
    UnLoadOpenSSLLibrary;
  end;
end;

procedure TForm1.Button1Click(Se……
作者:teclick 时间:2020/9/16 17:31:47
 
主题:android下文本文件的编码问题求教
摘要:FMX项目,我用tstringlist读取文本文件时,没有报错,但tstringlist没有读入任何内容,count为0,但是在windows下测试正常。
我试着把文本文件改为UTF8编码也不行,只有ANSI编码才可以,但是我的文件里有ANSI不包含的特殊字符,所以只能用unicode或UTF8编码。
我试着指定tstringlist.defaultencoding为unicode,结果还是一样,不知道问题出在哪里。
作者:guxiang 时间:2020/7/31 17:52:54
 
主题:关于用nethttpclient控件的POST操作的问题
摘要:……ing.UTF8);
  ss.WriteString(jodata.ToString);
  showmessage(inttostr(length(jodata.ToString)));

  nethttpclient1.Accept:='*/*';
  nethttpclient1.AcceptEncoding:='gzip,deflate';
  nethttpclient1.AcceptLanguage:='zh-CN';
  nethttpclient1.Use……
作者:zhangpuqing 时间:2019/6/14 17:10:12
 
回复:网上RSA签名/验签的比较多,
string类型/UTF8编码、Base64编码、2048/1024秘钥、待加密的字符串太长要分段、不一样的填充方式等有各种坑

最后问下:私钥加密/公钥解密的有没有?
Delphi加解密能和:http://tool.chacuo.net/cryptrsaprikey 上加解密保持一致
作者:l_wming 时间:2020/6/11 13:57:38
 
回复:……17. UTF8编码解码
5.3. Json数据处理函数
5.3.1. Json对象创建/释放
5.3.2. 写入基本数据类型到Json
5.3.3. 写入对象类型到Json
5.3.4. 从Json读基本类型数据
5.3.5. 从Json读对象类型数据
5.3.6. Json字段删除
5.3.7. Json对象的输出
5.3.8. JsonArray对象创建/释放
5.3.9. 取JsonArray对象的长度
5.3.10. 写入基本数据类型到JsonArray
5.3.11……
作者:jopher3 时间:2020/6/6 21:46:39
 
回复:
Firefox Nightly!
78.0a1  2020-05-10
inString := TEncoding.UTF8.GetString(inBytes);  FOnError(ClientID,ErrorMsg);  
inString 内无数据  

GET / HTTP/1.1
Host: 127.0.0.1:3002
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 ……
作者:keymark 时间:2020/5/11 18:45:50
 
主题:太诡异的问题了,idHttp.post的问题!
摘要:……ing.UTF8);
  PostData := TStringStream.Create(sPostDatainfo, TEncoding.UTF8);
  try
    IdC2bFreeze_tmp.OnlyWhenIdle := False;
    if LowerCase(LeftStr(Core_yoloC2b.c2b_addr, 5)) = 'https' then
      tmphttp.IOHandler := tmpSSL;
    tmphttp.Requ……
作者:yesin119 时间:2020/5/8 17:55:20
 
主题:Firebird Editor Pro v4.0.0 (03/May/2020) (free)
摘要:……ith UTF8 charset. The bug is reported and fix coming.
Version 1.2.0 (March 3, 2020)
- Added alias completion proposal in SQL editor
- Added completion proposal options
- Fixed SQL editor
- Fixed document
- Fixed replace
- Fixed scaling
- Fixed s……
作者:emailx45 时间:2020/5/6 1:04:43
 
主题:使用 Delphi 10.3 Rio 和 RTC 编写 Linux WEB 服务
摘要:……Set=utf8;';

begin
  HttpServer := TRtcHttpServer.Create(nil);
  DataProvider := TRtcDataProvider.Create(nil);
  try
    DataProvider.Server := HttpServer;
    DataProvider.OnCheckRequest := DataProvider.Anon(
      procedure(Sender: TRtcConnec……
作者:earthsbest 时间:2018/12/7 11:28:06
 
回复:TEncoding.UTF8
  在用  inifiles 计写ini文件时,  一样提示
No mapping for the Unicode character exists in the target multi-byte code page
作者:jingzu 时间:2020/4/3 18:04:02
 
回复:不要使用 TEncoding.ANSI 使用 TEncoding.UTF8
作者:zwjchinazwj 时间:2020/4/3 16:04:51
 
回复:……Set=UTF8');
    // olist.Add('Pooled=true');

    oDef := ServerContainer1.FDManager1.ConnectionDefs.FindConnectionDef
      ('mycon_' + DB);
    if oDef = nil then
      FDManager.AddConnectionDef('mycon_' + DB, 'MSSQL', olist);
    // ……
作者:xfyserver 时间:2020/2/28 14:42:13
 
回复:fastreport 的 fqbBase64Decode 是使用 ANSI 编码,而标准的是使用UTF8编码,
这样就可以了:

Memo2.Lines.Text:=TNetEncoding.Base64.EncodeBytesToString(TEncoding.ANSI.GetBytes('今天AABBCC你写程序了吗?'));

输出结果:
vfHM7EFBQkJDQ8Tj0LSzzNDywcvC8D8=
作者:earthsbest 时间:2019/12/31 9:05:28
 
回复:Delphi本身的问题,dfm文件即使是存成utf8格式的,汉字也存成#后面带Unicode编码表示的字符串,而不是直接的汉字字符。这在Delphi2009支持Unicode以前可以理解,但以后仍然是这种方式就令人难以接受。如果你打开一个VB窗体文件,里面的窗体上的元素如果有汉字就会是汉字字符,不会以字符串里的转换码显示。
作者:vclclx 时间:2019/12/26 10:56:33
 
回复:Ansi UTF8 ?
你的 sqlite 控件 他自己会不会正确处理呢?
我不知道,我只知道 FIREDAC 只支持 String 作为 SQL 的内容类型。
至于数据的编码 那是 连接数据源负责的。 SQL 代码不负责。
作者:wang_80919 时间:2019/12/16 12:27:27
 
回复:……nsi,UTF8,Unicode解码 就得到对应的字符的)。
   这种方式才是最值得提倡的和便于理解的。 Byte为1字节可直接将小于255的值直接赋给它,intger,char,Hex值等;
   如:ABtye :=255; $FF; Byte('A');
 6.个人觉得转码实际就是byte的操作,用Byte来做转换方便得多的(Byte 0..255,小于256的整数赋值给byte就是操作Byte的了)。
   比如我写的coderToUTF8Str。
 7.注意:Unicode只……
作者:keymark 时间:2019/12/5 16:25:10
 
回复:楼上的,楼主用Delphi7是没有TEncoding的~o~
楼主的问题描述得不准确,Delphi7保存文件时默认格式都是Ansi的,可能你保存的是英文文档,那样和没有文件的UTF8就是一样的。
作者:iamdream 时间:2019/12/5 15:15:03
 
回复:  if dlgSave1.Execute then
  begin
    mmo1.Lines.SaveToFile(dlgSave1.FileName+'.txt', TEncoding.UTF8);
  end;
作者:joman 时间:2019/12/5 14:56:23
 
回复:[img]http://bbs.2ccc.com/faces/45.gif[/img]
粗略的看了下 感觉不错 我可以学到东西。
书中地址pascal一览 由于是快速阅读 可能遗漏 自己看书吧
[url]https://github.com/PacktPublishing?utf8=%E2%9C%93&q=&type=&language=pascal[/url]
作者:keymark 时间:2019/12/2 23:16:02
 
回复:能看到。代码已修复,是985里一处修改UTF8编码导致的问题。
马上发986修复之。
作者:cnpack 时间:2019/12/2 11:09:02
 
回复:大约看了下
https://github.com/Xor-el/CryptoLib4Pascal/search?utf8=%E2%9C%93&q=hmac&type=
好像有?自己折腾去吧。
作者:keymark 时间:2019/12/1 15:02:51
 
回复:1、注意 unicode 版本 delphi 的 ansistring <> ansi 版本的 ansistring,不是简单的 sharemem 就 ok 的,底层内存块数据结构的不同
2、建议参考 com 的做法,公布 com 兼容的数据类型,如 widestring 这种操作系统管理、统一的数据类型:

function NetHTTPClient(const aURL: WideString; UTF8: Boolean): WideString;

注意二进制编码,或者 byte 的 ……
作者:lsuper 时间:2019/11/13 20:48:52
 
回复:function NetHTTPClient(const aURL: PAnsiChar; UTF8: Boolean): PAnsiChar; stdcall; external 'NetHTTP.dll';

DLL里 不能正确的接受到 传的aURL参数,是因为函数声明都要一致。上面多加了stdcall。

4楼的代码少了stdcall,可以用,但内存问题还是存在,只是有时正常,也有时会报非法指针使用,看运气了。
作者:internetzs 时间:2019/11/13 15:32:48
 
回复:我用 显式调用的方法 可以了。
procedure TForm1.Button1Click(Sender: TObject);
var
  libH: THandle;
  F: function(const aURL: PAnsiChar; UTF8: Boolean): PAnsiChar;
begin
  libH := LoadLibrary('NETHTTP.DLL');
  try
    @F :=  GetProcAddress(libH, 'NetHTTPClien……
作者:xlonger 时间:2019/11/13 13:58:02
 
回复:function NetHTTPClient(const aURL: PAnsiChar; UTF8: Boolean): PAnsiChar


Result := PAnsiChar(AnsiString(TNetEncoding.URL.UrlDecode(vUTF8.DataString)));

返回的字符串所用的内存是临时内存,返回后内存是不能访问的。

建议函数改为:
procedure NetHTTPClient(const aURL: PAnsiChar; UTF8: ……
作者:internetzs 时间:2019/11/13 12:03:13
 
回复:改的地方不对吧。
连 WINDOWS 都不会用。搞什么开发。

不过,还得重启,对于新版本 IDE。我直接用 NOTEPAD++ 改编码为 UTF8
完美。
作者:wang_80919 时间:2019/7/24 12:18:00
 
回复:TO 全能兄, 我搞定啦!!!

我采用枚举法,做了6个这样的类似函数.
组合出;ANSI UNICODE, UTF8

最后,以下两个是可以的.

  //UNICODE , UTF8
  function StringToHex5(const Value: string): string;
  var
    Length: Integer;
    InBytes, OutBytes: TBytes;
  begin
    InBytes := TEncoding.UNI……
作者:aknightchen 时间:2019/7/10 16:49:30
 
回复:你上面的代码,
我已改了: 

TEncoding.UTF8.             -->E79BAE
TEncoding.ANSI.             -->C4BF
TEncoding.UNICODE.          -->䕅㘷
TEncoding.ASCII.            -->3F
TEncoding.BigEndianUnicode. -->㜶䕅  
TEncoding.UTF7.          ……
作者:aknightchen 时间:2019/7/10 15:40:29
 
回复:(其实我上面的代码,就是抄你的).

我按你上面的UTF8试了一下,
 
安卓下输入结果是: StringToHex('目') = 'E79BAE'
作者:aknightchen 时间:2019/7/10 15:28:54
 
回复:解决了。论坛里有个朋友也遇到了跟我一样的问题,结果不是什么body,head的问题,而是那个数据流写入后需要将其Position:=0,即可。如下:
  ss:=tstringstream.Create('',tencoding.UTF8);
  ss.WriteString(jodata.ToString);
  ss.Position:=0;
作者:zhangpuqing 时间:2019/6/14 17:40:42
 
回复:谢谢bahamut8348 (leonna),总结一下,如果 scripts.txt为utf8格式,会出现乱码,ansistring非英文字符会出现乱码
作者:142857 时间:2019/6/13 16:06:25
 
主题:用idhttpserver + SSL 作为微信接口服务器
摘要:……ing.UTF8); //为防中文乱码
    try
        RequestList := TStringList.Create;
        RequestList.Add('username=wuweifgj');
        RequestList.Add('userpass=12345678');

        sHttpSocket := TIdHTTP.Create(nil);
        sshSocketHandler := TIdSSL……
作者:xhj123 时间:2019/6/12 17:17:46
 
回复:……Set=utf8');
    FParams.Add('Pooled=true');
    FParams.Add('PoolMaximumItems=10');
    FParams.Add('autoReconnect=true');

    FDManager.Close;
    FDManager.AddConnectionDef('Con_Pooled','Ora',FParams);
    
    FDManager.Active := ……
作者:wuxiangyang 时间:2019/5/30 16:00:17
 
回复:凡是遇上这种事,我都是用虚拟机里面的英文系统解压源文件,再另存为 utf8,最后拿到中文系统中编译就没问题了,太简单。这个习惯是在以前用 synedit 的时候想到的。
作者:sail2000 时间:2019/4/14 13:19:56
 
回复:是不是字符集的问题 都用utf8试试
作者:joman 时间:2019/4/9 16:13:16
 
回复:……ing_UTF8());
    HashBytes := HashValue(ToBytes(AData, IndyTextEncoding_UTF8()));
    Result := TIdEncoderMIME.EncodeBytes(HashBytes);
  finally
    Free;
  end;
{$ENDIF}
end;……
作者:earthsbest 时间:2019/4/8 16:47:12
 
回复:……ing.UTF8.GetBytes(Key);
    hash := hmac.HashValue(TIdTextEncoding.UTF8.GetBytes(Sign));
    Result := ToHex(hash);
  finally
    hmac.Free;
  end;
end;……
作者:ghs_79 时间:2019/4/8 11:52:07
 
主题:Many Tools/Services Online to Developers (Converter, D/Encoder, Parser, Hasher, Encrypter, etc...
摘要:……er
UTF8 Encoder
UTF8 Decoder
UTF16 Encoder
UTF16 Decoder
Uuencoder
Uudecoder
Morse Code Encoder
Morse Code Decoder
XOR Encryptor
XOR Decryptor
AES Encryptor
AES Decryptor
RC4 Encryptor
RC4 Decryptor
DES Encryptor
DES Decryptor
Triple DE……
作者:emailx45 时间:2019/3/24 12:23:05
 
回复:……ing.UTF8);……
作者:glwang 时间:2019/3/18 8:42:28
 
回复:对于英文字母、数字、符号来说,utf8和ansi是一样的东西
作者:bluestorm8 时间:2019/3/12 8:36:04
 
主题:文本文件的智能识别(含GB/Big5的区分)
摘要:    这两天研究文本文件的识别问题,意外地解决了Ansi/UTF8文件的区分,更意外的是,竟然让我找到了区分GB和Big5编码文件的方法!经测试,识别率可以达到95%以上。
    我已经将实现原理及代码放到盒子上来了,不过还没通过审核。现在你可以访问我的博客 http://dreamisx.blog.163.com/ ,你可以获得完整源代码。
    当前的实现方法对10个汉字以内的文本识别率不太高,不过对更长些的文本,识别率还是很高的。
    欢迎拍砖。
作者:iamdream 时间:2012/3/14 9:11:59
 
回复:输入的字符串需要知道编码。ansi的还是utf8的还是别的
作者:bamboocaep 时间:2019/3/11 13:08:33
 
回复:FireBird 一点问题都没有。比你们的 mysql 好多了。

的确没有 N开头的。
所以,我们后面就设置了 Charset 为 UTF8。这样就安全了。
作者:wang_80919 时间:2019/2/27 12:37:58
 
回复:有些人,你只有骂他,
他才会把脑子转起来。眼神也会提高。
因为,他想证明,你骂错了。
这些人外号 不挨骂不舒服斯基

关于楼主
VarChar 是 单字节数据,只能存放 ANSI 编码的数据(当然,我完全可以把他当成流,那么就什么都能存,但是当成 string 就不可能 多国语言 一起保存了。比如 简体中文加韩文加俄语一起保存,ANSI 是不支持的)。
NVarChar 是 多字节数据,可能是 UTF8 或者 Unicode 的,看数据库开发者的想法。

如果你非要用 VarChar 那……
作者:wang_80919 时间:2019/2/27 9:59:12
 
回复:To mochizuki:
我改为字符集为UTF8或GB_2312,仍有问题
作者:ke8880 时间:2019/2/26 17:01:29
 
回复:字符集问题?我有个小项目用的是也是firebird+firedac,字符集是utf8,一点问题也没有
作者:mochizuki 时间:2019/2/26 12:22:45
 
回复:会用到GB2312或BIG5编码的软体,一般都是9X年代的原始码。如果是用NT核心的话,直接转成UTF8就没问题了。
作者:stacker 时间:2019/2/13 12:52:46
 
回复:……ing.UTF8,
    TKeyBit.kb256, TPaddingMode.pmPKCS5or7Padding, True);
end;……
作者:wang_80919 时间:2019/1/24 11:05:28
 
回复:……ing.UTF8,
    TKeyBit.kb256, TPaddingMode.pmPKCS5or7Padding, True);
  Result := TNetEncoding.Base64.EncodeBytesToString(OutBytes);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Edit4.Text := EnCrypt_CBC256(Edit1.Text, Edit2.Text, ……
作者:wang_80919 时间:2019/1/23 9:41:02
 
主题:datasnap服务端 内存不但增加,用一段时间不能连的问题,请教
摘要:……Set=UTF8');
      // olist.Add('Pooled=true');

      oDef := ServerContainer1.FDManager1.ConnectionDefs.FindConnectionDef
        ('mycon_' + DB);
      if oDef = nil then
        FDManager.AddConnectionDef('mycon_' + DB, 'MSSQL', olist)……
作者:xfyserver 时间:2018/12/20 9:45:49
 
回复:如果你的系统是WIN7,那么系统的字符识别标识就是gbk,读取的网页的字符可能是utf8字节码,这样的话需要转换一下,要是少量的话,你这样的替换也行
作者:luchao900 时间:2018/12/6 20:32:10
 
主题:delphi用unicode有啥好处?
摘要:兼容问题一大堆,或者全用utf8,不就行了
作者:meica 时间:2018/11/18 22:53:04
 
回复:注意 utf8 也是unicode 

unicode 是 utf8 utf16 utf32的范称

DelphiXE以上版本默认使用的是utf16,但是,某些函数却并不支持utf16,到今天都是如此。

主要原因在于:utf16中存在着不能用一个16位表达的字符,
因此,使用string[10]来读写字符串中第10个字符这种代码,严格来讲,是错误的。也因此,诸如Pos函数查找某个字符也是有问题的。

尤其是使用 string[10] 来修改第10个字符,就比较危险:
一种思路是,让字……
作者:zwjchinazwj 时间:2018/11/19 14:37:14
 
回复:10.3 说了,以后默认的 pas 编码为 无 BOM 的 UTF8
那么也就是说 你们过去的 无 bom 的 pas 会显示中文乱码。
当然,看到乱码可以试试 修改编码,找找 ansi。如果有 ANSI 或者 GB 之类的编码,先选上。然后再转为 UTF8
作者:wang_80919 时间:2018/11/19 9:36:44
 
回复:兼容问题一大堆只能说明你水平不行。在我眼里,unicode也好,utf8也好,只要我想要某种编码,总能得到我想要的结果。不过编码问题的确是一个技术活,我也时不时练习和研究,认真到什么程度?有一次还专门研究了一下小时候玩台湾的游戏,为什么曹操会显示为“变巨”。另外还将几个专用汉字,比如“中文”,还有我自己的名字,的ansi和unicode编码背了下来,用于快速判断问题。还有区位码,内码的用处和区别,等等,都搞清楚了的。。。
作者:nevergrief 时间:2018/11/19 5:59:16
 
回复:Windows原生不是utf8,delphi用utf8有鸟用
作者:yxsoft 时间:2018/11/19 1:02:01
 
主题:使用ICS的TSslHttpCli.post数据的问题,求助!!!
摘要:var
  SndStrm : TStringStream;
  RcvStrm : TStringStream;
  SslCont : TSslContext;
  HttpCli : TSslHttpCli;
begin
  Result := False;

  SndStrm := TStringStream.Create(ARequest, TEncoding.UTF8);
  RcvStrm := TStringStream.Create('', TEncoding.U……
作者:nieyv 时间:2018/11/14 15:55:52
 
回复:……
选择 UTF8 UNICODE 都可以。
还有就是
lable1.Caption := XXXDataSet.FielBbyName('某个Ansi字段').AsString; 也是不正常的。
不过,使用 FireDAC 连大部分数据库,可以指定 编码,比如指定为 GBK 就可以了。……
作者:wang_80919 时间:2018/11/14 15:51:44
 
回复:[url=http://search.2ccc.com/Default.asp?site=SELF&keyword_and=utf8&keyword_or=&pagerow_cnt=90000&Submit=%C8%AB%CE%C4%BC%EC%CB%F7]点我上车[/url]
作者:keymark 时间:2018/11/11 15:17:19
 
回复:procedure TForm1.Button2Click(Sender: TObject);
var
  SL : TStringList;
  i:string;
  begin
  SL := TStringList.Create;
  SL.LoadFromFile('a.log',TEncoding.UTF8);
  if SL.IndexOf('TXN=') > 0 then
  begin
 showmessage('ok');
  end;
  SL.Fr……
作者:psstudio 时间:2018/11/11 13:41:43
 
回复:@hawke2e 

在我看来,不存在多用栈,或者少用栈的绝对理由。
栈上分配内存,回收内存,效率之高,是任何内存管理都无法比拟的。
适合的场景用适合的方式去做,是我认为合理根据。
这是我反对把string全部统一成utf16的原因所在,这个世界本来就是多样的
需要尊重客观规律和事实,utf8 utf16 ansc 甚至utf32 都大量存在,就该有与之适配的工具去使用和表达。

具体到栈和堆,也是一样的。不应特别排斥栈或者堆,过尤不及。该用就用。


另外,你有点曲高和寡,你的智能……
作者:zwjchinazwj 时间:2018/11/5 14:03:10
 
回复:
Delphi7 的时候,就已经有  WideString, 就是 unicodeString  的基础。
根本没有必要把缺省的 string 改成 wideString 。  导致老代码通通完蛋,
老程序员也走了一批。

 utf8 , 其实其排列就是  ansiString ,  和以前的 string 一样。 只要内核增加
utf8 支持, 然后再优化 wideString, 这样单字节和双字节的 unicodeString ,
就都能很好支持了。

后面还搞出一个愚蠢的 stri……
作者:linsigong 时间:2018/11/2 17:43:04
 
主题:utf8字符转成gbk, 转成功了, 但有部分字符乱码.
摘要:    // TT := TStringStream.Create();
    idp.Get(Url,TT);
    if idp.ResponseCode = 200 then begin
       Result := TT.DataString;
       if idp.Response.CharSet = 'utf-8' then begin
          Result := '========'+UTF8ToUnicodeString(Result); 
 ……
作者:tuesdays 时间:2018/10/30 11:22:45
 
回复:Result := '========'+UTF8ToUnicodeString(Result); 
你家的 result 是万能的吗?
活该乱码。

另外,我不确定旧版本的 DELPHI 是不是支持 GBK 。
GB2312 下 缺少很多字符的。
可以肯定的是 所有 WINDOWS 系统 都不支持 GBK,只有 UTF8 和 UNICODE 才支持这些字符。

新版本 DLEPHI 采用 936 GB2312 GBK 都无法支持 UNICODE 特殊字符。
只有 54936 也就是……
作者:wang_80919 时间:2018/10/30 12:28:12
 
回复:……NSI UTF8 UNICODE 很多部分都是老外发明的。中国只有 中日韩的 CJK 以及自己的 GBK 是自己发明的。其他的都抛弃吧。
还有其他各种协议  TCP DUP IP DNS 等等,都抛弃吧。都重新设计一套。
也许有人会说 太麻烦了吧。但是 TD 4G 5G 不就有中国版本了嘛。说明 设计新协议是可行的。

7 除此之外,还有各种可以中国自己做的。我们中国 应该闭关锁国,这样就能保证,一切都是自己的。……
作者:wang_80919 时间:2018/10/23 16:32:35
 
主题:delphi xe2 idftp使用乱码问题
摘要:……F7, UTF8, Unicode, BigEndianUnicode
    IdFTP.IOHandler.DefStringEncoding := TEncoding.ANSI;
//    IdFTP.IOHandler.DefStringEncoding := TIdTextEncoding.ANSI;
    IdFTP.Passive := True;
    IdFTP.ChangeDir('\Test');
    IdFTP.TransferType := ftASC……
作者:andreabocelli 时间:2012/9/3 15:30:17
 
主题:怪异的post问题
摘要:……ing.UTF8);
      ResponseStream:=TStringStream.Create('',TEncoding.UTF8);
      Url:='https://i.snssdk.com/video/fedata/1/pgc/' + 请求视频上传地址的响应.视频上传ID;

      MyIdHTTP.Request.Accept:='application/json, text/javascript, */*; q=0.01';
      MyId……
作者:cenunus 时间:2018/3/18 9:21:31
 
回复:看看编码吧,这个就是编码的问题。2010以后默认是utf8码,要兼容之前的就要想办法用ansi码或用byte数据流方式。
作者:kevin_wzh 时间:2018/9/21 14:54:01
 
回复:要过http协议,就改用utf8编码。
多00是因为09以后默认都是unicodestring。
作者:bahamut8348 时间:2018/9/19 20:55:15
 
回复:uses FireDAC.Stan.StorageJSON;

var
  Stream: TStringStream;
begin
  FDQuery1.Open;
  FDQuery1.ResourceOptions.StoreItems := [siData];
  try
    // 保存到stream
    Stream := TStringStream.Create('', TEncoding.UTF8);
    try
      FDQuery1.SaveT……
作者:earthsbest 时间:2018/9/13 20:29:16
 
主题:为什么在win32下可以实现读取网页源代码内的数据,而在移动平台上不能实现?
摘要:……需要进行UTF8解码
    ResponseStr := UTF8Decode(ResponseStr);
   finally
    IdHttp.Free;
     RequestList.Free;
     RequestStream.Free;
     ResponseStream.Free;
   end;
  //s:=ResponseStr;
   //s:=list1.Text;
   s2:='kjhm="'+copy(DateTimeToStr(D……
作者:zzhsq2008 时间:2018/9/9 16:24:49
 
主题:请求帮助转换java代码为delphi
摘要:……es("utf8"));
          return md5.digest();
         } catch (Exception e) {
          throw new RuntimeException(e);
         }
     }

    private static String encodeBase64(byte[] b) {
         sun.misc.BASE64Encoder base64Encode = new BASE64……
作者:cenunus 时间:2018/9/7 8:17:12
 
回复:加解密操作底层都是基于byte[]的,只要你同样的编码方式(比如utf8)将string转成byte[],用相同的算法再加密,不可能会不一样。。
作者:gmxyb 时间:2018/8/23 10:01:29
 
回复:字符集的问题吧,用notepad++转换源文件到utf8
作者:delphixxx 时间:2018/8/20 19:59:31
 
主题:几行简单的SHA256转换一下语言,请大神协助一下,多谢
摘要:MessageDigest md = MessageDigest.getInstance(ALGORITHM_SHA256);
md.reset();
md.update(jason_data .getBytes("gbk"));
return toHexString(md.digest());

Delphi里很多编码对utf8的,这个gbk不是很明白,百度资料也比较少
上面几行,Delphi里怎样描述呢?
作者:yesin119 时间:2018/8/16 9:09:47
 
回复:ALGORITHM_SHA256,这个玩意就是TIdHashSHA256吗?
那意思直接就是:SHA256: TIdHashSHA256;
如果定义jason_data为String的话:

Result :=SHA256.HashStringAsHex(jason_data,IndyTextEncoding_UTF8);

安装的Delphi有点问题,没法定位函数后的参数,HashStringAsHex这个函数,后面那个编码格式,能传入GBK就好了。

貌似这样是不是不靠谱?
作者:yesin119 时间:2018/8/16 9:24:28
 
回复:ReadMe.txt
2.3
2.4
if has pagecode error,
use notepad++ open it codepage is GBK and save as utf8 with bom.
作者:wang_80919 时间:2018/8/12 21:59:43
 
回复:唉,都说了,你D7要支持土耳其语,改Font.Charset/Font.Name两个就可以了,你试过了吗?
DLL接口函数在D7下可以工作,说明是Ansi/UTF8的,我猜是Ansi的,而XE5默认是unicode了,你要调用Ansi类型的接口函数,那你得用AnsiString/PAnsiChar才行。
作者:iamdream 时间:2018/8/6 13:12:23
 
回复:…… := UTF8转WideString(#$C2#$A9);;
怎么转,早就忘了。

看看吧。垃圾 D7 就是这么麻烦。

所以,请使用 新版本 吧。
一个鼠标右键,绝对解决问题。
而且,也可以扔掉 TNT。减少出 BUG 的潜在风险。


不过,我猜。楼主已 弃楼而逃。
这些是写给爱学习的网友的。……
作者:wang_80919 时间:2018/8/4 8:53:07
 
回复:楼上正解,sfJSON 是UTF8的,不过 TStringStream 默认的编码是由系统决定的,Windows 是 ANSI,其他是 UTF8,所以创建的时候指定编码,TStringStream.Create('', TEncoding.UTF8)
作者:earthsbest 时间:2018/7/2 8:54:25
 
回复:因为sfJSON方式保存默认是UTF8,你上面用的lstream.WriteString(...)应该是UTF16,编码不一致。
作者:iamdream 时间:2018/7/1 20:19:46
 
主题:delphi7+indy10.5.7使用idftp获取ftp服务器中文目录乱码
摘要:请问各位大虾如何解决?我在idfto.connect后加idftp.IOHandler.DefStringEncoding := TIdTextEncoding.ASCII不行,换了TIdTextEncoding.UTF8,TIdTextEncoding.Default都不行,中文出来都是问号。加了utf8ToAnsi也不行。求救!!!急!!!
作者:tigerbeer 时间:2014/6/27 21:21:22
 
回复:……(CP_UTF8, TPtrWrapper.Create(@FieldDesc.szName[0]));

//  if LName.Length = SizeOf(MIDASNAME) - 1 then

//  begin

//    V := InternalGetOptionalParam(szFIELDNAME, FieldID);

//    if not VarIsNull(V) and not VarIsClear(V) then

//      LName ……
作者:szlbz 时间:2018/5/27 11:04:13
 
回复:LName := TMarshal.ReadStringAsAnsi(CP_UTF8, TPtrWrapper.Create(@FieldDesc.szName[0]));
if Lname.length = sizeof(midasname)-1 then

改为

if strlen(fielddesc.szname)=sizeof(midasname)-1 then
作者:llo2003 时间:2018/5/21 9:03:15
 
回复:造成这种结果有可能是字符集转换出了问题。上面这句好像是说要将UTF8字符集转换成ANSI。CP=Code Page。不要轻易认定是Bug,有时候可能是咱们不会用。
作者:c5soft 时间:2018/5/20 23:13:59
 
回复:追踪 Datasnap.DBClient.pas

发现是这句执行完后,就得到错误的字段名了.

LName := TMarshal.ReadStringAsAnsi(CP_UTF8, TPtrWrapper.Create(@FieldDesc.szName[0]));

TMarshal.ReadStringAsAnsi是来源于System.pas中.

下面就看不懂了...
作者:aknightchen 时间:2018/5/20 13:27:58
 
主题:修复10.2.3中TRegEx的replace方法替换中文返回乱码的问题
摘要:我在10.2.2中也遇到过这个问题,现在给出初步的修复方法:
TPerlRegEx的FReplacement,FSubject都是UTF8String类型,但是Replacement,Subject属性返回的是string,这些属性的get及其它相关方法中,都使用的是string()作类型转换,但这个string()默认转换utf8到string的实现是有bug的,改为utf8tostring()后可正常返回中文。

附件是改好的System.RegularExpressionsCore单元。
……
作者:bamlan 时间:2018/5/11 11:28:01
 
回复:base64加密后可能出现例如+这种特殊字符,如果对方服务端会自动urldecode一次的话,+就会被解释成空格。
所以,你应该在传输前先urlencode一次。

另外,编码尽量用utf8,最次也应该用gbk。
作者:bahamut8348 时间:2018/5/10 8:44:57
 
回复:问题解决了。
大体原因就是AnsiString转成WideString后,再转回AnsiString,在双字节和单字节上delphi处理的还是不够完善。
简单来说,就是一个AnsiString字符串转为WideString,再转回AnsiString后,两个字符串的bytes是不一样的。

具体到我代码里面,就是DropMaster在处理系统传过来的字符串是AnsiString。在事件中传递参数时,转成了String(默认为WideString)。之后,UTF8ToString就出现了上面的问题。……
作者:vkow 时间:2018/5/8 15:29:23
 
回复:楼主你的 TEST_UTF8 : String 定义只适用于Delphi2009之前的版本,在新版Delphi中,你应该用UTF8String类型。此外,貌似你的这个UTF8字符串本身就不对。
作者:iamdream 时间:2018/5/8 9:12:30
 
回复:……Set=utf8
DriverID=MySQL
Server=127.0.0.1
POOL_CleanupTimeout=30000
POOL_ExpireTimeout=90000
POOL_MaximumItems=50……
作者:majx 时间:2018/5/4 13:49:51
 
回复:如果你没有中文,那么 不可能不一样。
MD5 算法是定死的。
有中文,才有区别。区别在于编码。
这就是我们喜欢高版本的原因。
高版本 默认 UTF8,不喜欢的话,自己换编码。
高版本 的 MD5 可以抛弃 INDY,当然,不抛弃也是可以的。

D7 的话 string 默认是 Ansistring ,同时你可以强迫他成为 Utf8String。
高版本的 string 是 UnicodeString,为了安全起见,不要去想他是什么编码,你应该当成无编码的。中性的。

需要编码的时候,就……
作者:wang_80919 时间:2018/5/4 12:14:45
 
回复:没遇到过乱码的问题,以utf8创建数据库,然后 FDConnection 的 StringFormat=Unicode,就可以了。
作者:earthsbest 时间:2018/4/16 13:48:42
 
主题:Android手机访问QuickBurro+Delphi提供的服务
摘要:……S识别的UTF8格式编码结果数据,放ResponseParcel容器里...
   JsonArray:=TQBJsonArray.create;
   //
   Json:=TQBJson.Create;
   Json.Put('person_name','李先生');
   Json.Put('person_sex','男');
   Json.Put('person_telephone','1234567890');
   JsonArray.put(J……
作者:jopher3 时间:2013/1/28 15:02:16
 
回复:我对楼上的语文,完全不懂。我怀疑我的体育老师是火星来的。居然一个火星体育老师还教我们语文。

Edit2.Text:=UTF8Decode(EncodeString(Edit1.Text));
这是 D7 写法。

到了 10.2.3
Edit2.Text := TNetEncoding.Base64.EncodeBytesToString(TEncoding.UTF8.GetBytes(Edit1.Text));
不过呢 EMB 默认就是 UTF8
所以可以简写为
Edit2.Text……
作者:wang_80919 时间:2018/4/13 15:02:39
 
回复:跨平台 字符串 讨论(以及 字符串编码 讨论)
http://2pascal.com/forum.php?mod=viewthread&tid=1654&fromuid=4
(出处: 2Pascal-新时代的Pascal)

其实和这个帖子没啥关系,这个帖子只是告诉你 UTF8 不是你这样转的而已。



楼主,你自己看看。
http://base64.xpcha.com/
http://www1.tc711.com/tool/BASE64.htm
http://tool.oschi……
作者:wang_80919 时间:2018/4/13 11:11:03
 
回复:……ing.UTF8, TEncoding.UTF8,
        aKey, APaddingMode, CipherMode, 16,
        rlCRLF, rlCRLF, nil);
end;


FlyUtils.CSharpJavaDES单元,DESStream_BytesKey过程中,这里好像不能用随机数补位:
        FillChar(StrBytes[BufLen], C_BlockSize - BufLen, PaddingCount);
     ……
作者:l_wming 时间:2018/4/12 15:36:56
 
回复:老子,代码都公开了,你还问个屁。

5 楼的,你语文是体育老师教的吗?

你给的知道的标题你是不是看不懂?


昨天测试了代码 2年多过去了。
依然 TEncoding.ANSI UTF8 不能用。
最基础的 字符串 编码转换都无法简单的进行。不具备实用价值。
当然,如果你打算绕过所有的坑,那么 跨平台的 dll 是没问题的,让别的语言调用,也是没问题的。
例如 只做 底层的 运算 或 数据处理,不处理任何 string (PAnsiChar 等不能用),更不考虑 UI。
作者:wang_80919 时间:2018/3/11 8:59:53
 
主题:Intraweb14.2.3 这个RegisterContentType函数在哪个单元?
摘要:下载了大神的微信例子,但编译的时候提示IW.Parser.UTF8单元没有找到,换成UTF8ContentParser单元,但仍然提示RegisterContentType函数没有找到

不知道应该引用哪个单元,请指教,谢谢
作者:sxbug 时间:2017/10/19 10:52:41
 
回复:挺坑爹的代码。。
反复的用date('Y/m/d H-i-s', <time>)也不知道几个意思。。
还有这个地方count(str_split((String) date('Y/m/d H-i-s', <time>))) - 1
要计算字符串长度直接用strlen或者mb_strlen不就完了么。。。

base64倒是一般不会有问题。不过一般这类动态语言用的都是utf8编码。在处理字符串的时候注意一下编码一般就不会有问题。
作者:bahamut8348 时间:2018/2/1 23:14:14
 
回复:……ict.utf8';
  HMM_PATH := './jiebadict/hmm_model.utf8';
  USER_DICT := './jiebadict/user.dict.utf8';
  IDF_PATH := './jiebadict/idf.utf8';
  STOP_WORDS_PATH := './jiebadict/stop_words.utf8';

  Ahandle := NewJieba(PAnsiChar(DICT_PATH), PAn……
作者:badwood 时间:2018/1/24 17:43:07
 
回复:……YPE_UTF8, CODE_TYPE_BIG5);

 tagICTCLAS_Result = record
   iStartPos: integer; //开始位置
   iLength: integer; //长度
   szPOS: string;//词性
   iPOS: integer; //词性ID
   iWordID : integer; //词ID
   iWordType: integer; //词语类型,用户词汇?(0-否,1-是)
   iWeight: ……
作者:letianwuji 时间:2018/1/22 12:12:31
 
回复:演示如下:
var
  DICT_PATH, HMM_PATH, USER_DICT, IDF_PATH, STOP_WORDS_PATH: ansistring;
  Ahandle: Thandle;
  txtlen: cardinal;
  txt,newtxt: ansistring;
  pw, words: pjiebaword;
  tag: RawByteString;
begin

  DICT_PATH := './jiebadict/jieba.dict.ut……
作者:badwood 时间:2018/1/21 17:25:02
 
回复:@badwood, 
非常感谢分享!
关于“找到原因了,输入的文本需要转为utf8编码,输出再解码,然后 循环按照pw^.len的长度自己截取字符串,和C里直接可以输出pw^.word不同。”,可以给一段演示代码吗?谢谢。

@letianwuji,
.pdf文件?
作者:edwinyeah 时间:2018/1/21 16:48:34
 
回复:找到原因了,输入的文本需要转为utf8编码,输出再解码,然后 循环按照pw^.len的长度自己截取字符串,和C里直接可以输出pw^.word不同。
作者:badwood 时间:2018/1/21 12:24:12
 
回复:测试代码如下:

var
  DICT_PATH, HMM_PATH, USER_DICT, IDF_PATH, STOP_WORDS_PATH: ansistring;
  Ahandle: Thandle;
  txtlen: cardinal;
  txt: ansistring;
  pw, words: pjiebaword;
begin

  DICT_PATH := './dict/jieba.dict.utf8';
  HMM_PATH := './dict/h……
作者:badwood 时间:2018/1/21 12:06:40
 
回复:指定了charset=utf-8,那么就要用utf8解一次码。
作者:bahamut8348 时间:2018/1/17 12:27:46
 
回复:json数据里面有中文,如果不注意编码就会出现乱码。

我前几天刚碰到,用ajax取回来的数据中文就是乱码的。后来我把服务端json数据文件(因为我是发送数据文件到浏览器的,所以是一个文件)另存为utf8格式,再发送就正常了。
作者:looper 时间:2018/1/15 10:55:41
 
回复:我一般是把源代码全选、复制到ultra editor里面,然后另存为utf8格式的就没问题了。
作者:hi100 时间:2018/1/12 15:17:01
 
主题:10.2.2.2004通过管理器Add New->Unit报错
摘要:……LIB\UTF8\EK_REGEX.OBJ.@RegExp@regmatch$qqrpxuc + $3F6
[2221D2D9]{boreditu.dll} C:\BUILDS\TP\INTERMEDIATE\DEBUG\LIB\UTF8\EK_INS.OBJ.@LineEndUndoOp@Execute$qpv13EKExecuteOp_t + $1B9
[22212325]{boreditu.dll} C:\BUILDS\TP\INTERMEDIATE\DEBUG\LIB\UTF8\EK_BL……
作者:boyla 时间:2017/12/26 11:09:44
 
回复:@dbyoung
 向毛主席保证源代码没有中文字符,不过你说改成UTF8格式是可以试试的,防止以后出现类似问题。谢谢。
作者:boyla 时间:2017/12/26 11:07:11
 
回复:那是因为你的代码中,含有其它语言的缘故,譬如中文注释。
当代码中UNICODE字符串和非UNICODE字符串共存时,IDE偶尔会出错的。
宇宙第一IDE也一样。
CNPACK也不例外。当然这不能怪CNPACK。
这不是IDE的问题,是系统的问题。WINDOWS系统在UNICODE方面还没有完善,还有BUG.

知道了原因,就知道解决办法了。
可以将源码单元另存为 UTF8 格式,或者 UNICODE 格式。
作者:dbyoung 时间:2017/12/26 7:49:16
 
回复:……BK还是UTF8,我将目录名故意填错,返回的结果和上面也一模一样。……
作者:badwood 时间:2017/12/25 15:46:29
 
主题:WebPascal脚本模型 2.6 发布
摘要:……持,使用UTF8编码;
 注意:HmacSHA224、HmacSHA384符合RFC标准,可能是国内那些网站的计算结果有误,国外网站上计算结果是相同的;
 +增加多脚本目录支持,以实现同IP绑定多域名的功能实现,在配置中设置[Script]栏目,设置“正则=目录名”即可;
 示例:比如设置 \d*\.\d*\.\d*\.\d* = ip,就会把针对主机IP地址的请求指向ip目录进行处理,而不是Script目录;
 *修正自定义错误提示获取方式,对FnExit函数有影响,比如if语句内部调用Fn……
作者:star5 时间:2017/11/18 13:45:49
 
主题:delphi xe10 utf8 解码问题
摘要:
delphi xe10 utf8 解码问题
我发一段 
32,227,128,144,49,55,53,227,128,145,230,185,150

我转换为sByte: Tbytes;

我用 utf8toAnsi(ansistring(sByte))
 会有乱码的现象,请问,要什么解决

xe10

先谢谢各位
作者:yupor5 时间:2017/11/18 9:01:48
 
回复:const
  Bytes: TBytes = [32, 227, 128, 144, 49, 55, 53, 227, 128, 145, 230, 185, 150];

S := TEncoding.UTF8.GetString(Bytes);

2楼的结果是对的,“湖”utf8 占三个字节,就是 230,185,150
作者:earthsbest 时间:2017/11/18 9:48:47
 
回复:……ing.UTF8.GetBytes(Value);


          ms = new MemoryStream();
          cs = new CryptoStream(ms, ct, CryptoStreamMode.Write);
          cs.Write(byt, 0, byt.Length);
          cs.FlushFinalBlock();

          cs.Close();
          byte[] byte……
作者:ghs_79 时间:2017/11/15 8:37:04
 
主题:用网上的aes-ecb加密文件,为嘛解密出来就没法读了呢?
摘要:……ing.UTF8;
  if KeyEncoding = nil then
    KeyEncoding := TEncoding.UTF8;
  InStream := TStringStream.Create('',ResultEncoding, False);
  InStream.LoadFromFile(InFile);
  try
    OutStream := TStringStream.Create('', ResultEncoding, False);
  ……
作者:letianwuji 时间:2017/11/6 14:25:20
 
回复:……ing.UTF8;
  if KeyEncoding = nil then
    KeyEncoding := TEncoding.UTF8;

  InF:=TFileStream.Create(InFile,fmOpenRead or fmShareDenyWrite);

  try
    OutF := TFileStream.Create(OutFile, fmCreate);
    try
      AESDecryptStream(InF, OutF, 0, K……
作者:letianwuji 时间:2017/11/6 17:13:09
 
主题:RAD Studio 10.2 AES加密数据
摘要:……ing.UTF8);
    Edit2.Text := sEncryptData;
  finally
    Codec1.Free;
    CryptographicLibrary1.Free;
  end;
end;
例如上面的程序代码就可以把” RAD Studio AES 数据加密功能”字符串加密为:
BVwUy3cjhlaznFvKiXXUM/0UE229/h1tqU3B/MfiKAmob+bRW3Qhz7o……
作者:yuto 时间:2017/10/28 12:15:03
 
主题:WebPascal脚本模型 2.5 发布
摘要:……时,采用utf8编码;
 ^调整http.api演示内容,增加echo.api反馈http信息,方便调试;
 ^调整输出JSON时不将日期转换成数值,方便其它语言调用,影响DBQueryToJson等函数;
 ^从本版本开始区分提交方法,GET对应Query或Request.query,POST对应Input或Request.Params等等;
  注意:本版本开始区分提交方式,以便分开获取多种不同的数据,如纯JSON的请求等,旧项目中如果都是用POST方式交互的,可以批量将request.q……
作者:star5 时间:2017/10/17 15:48:06
 
主题:WebPascal脚本模型 2.4 发布(中秋快乐!)
摘要:……时,采用utf8编码;
 +增加HmacSHA256散列/哈希算法函数,采用utf8编码进行转换,结果与站长之家等网站在线工具计算相同。

欢迎有兴趣的加群讨论,群里也会分享一些资源和资料。……
作者:star5 时间:2017/10/4 19:48:37
 
主题:TStringStream的问题
摘要:Delphi10.2.1。我写的如下两个代码段,一个是Create时传递字符串,一个是Create之后调用WriteString传递字符串。

代码段1,结果为3:
var
  ss: TStringStream;
  sContent: string;
begin
  sContent := '123';
  ss := TStringStream.Create(sContent, TEncoding.UTF8);
  try
    ShowMessage(IntToStr(L……
作者:vclclx 时间:2017/9/21 19:58:03
 
回复:  sContent := '123';
  ss := TStringStream.Create('', TEncoding.UTF8);
  try
    ShowMessage(IntToStr(ss.Position)); //0
    ss.Seek(0, TSeekOrigin.soBeginning);
    ss.WriteString(sContent);
    ShowMessage(IntToStr(Length(ss.Bytes))); //8192
……
作者:vclclx 时间:2017/9/21 20:09:39
 
主题:utf8解码从D7编导Delphi10.2要怎么改啊
摘要:之前在D7上是这样写的
ProcessTxt.Lines.Add(UTF8Decode(IdHTTP1.Response.RawHeaders.Text));
那么在delphi10.2后要怎么写啊?UTF8Decode是不行的
作者:ken0137 时间:2017/8/19 23:22:48
 
回复:betterlihua (lihua)
最后参数加IndyTextEncoding(TEncoding.UTF8),
是这样的吗?
FWSInfo.IdHTTP1.Post( strurl, stream,MS,IndyTextEncoding(TEncoding.UTF8));
这样的不行[dcc32 Error] download_product.pas(106): E2250 There is no overloaded version of 'Post' that can be cal……
作者:ken0137 时间:2017/9/7 15:01:47
 
回复:FWSInfo.IdHTTP1.Post( BDC.SysSite+'download/product', stream,MS);最后参数加IndyTextEncoding(TEncoding.UTF8)
作者:betterlihua 时间:2017/9/5 9:11:37
 
回复:另外还有个问题,现在Delphi默认字符串是UTF16,对于大多数Web来说,使用的是UTF8,换句话说,Web需要大量对字符串进行处理,频繁的UTF16到UTF8的转换会成为性能瓶颈。
作者:zwjchinazwj 时间:2017/8/30 8:53:43
 
主题:哪位大侠能把这段java代码翻译成delphi的呢?
摘要:……ing.UTF8.GetBytes(bodys);
          using (Stream stream = httpRequest.GetRequestStream())
          {
          stream.Write(data, 0, data.Length);
          }
          }
          try
          {
          httpResponse = (HttpWebResponse)http……
作者:ozhy1 时间:2017/8/13 20:31:51
 
回复:……end(utf8Encode(jo.AsString));
  IdHTTP1.Post(Str,TJ,TStream);
  TJ.Free;
  ProcessTxt.Lines.Add(UTF8Decode(IdHTTP1.Response.RawHeaders.Text));
返回的头部信息为
Server: nginx/1.4.6 (Ubuntu)
Date: Sun, 20 Aug 2017 11:22:47 GMT
Content-Type: application/zip……
作者:ken0137 时间:2017/8/20 19:29:10
 
回复://fix and remove by flying wang.
//  LName := TMarshal.ReadStringAsAnsi(CP_UTF8, TPtrWrapper.Create(@FieldDesc.szName[0]));
//  if LName.Length = SizeOf(MIDASNAME) - 1 then
//  begin
//    V := InternalGetOptionalParam(szFIELDNAME, FieldID);
//    if……
作者:wang_80919 时间:2017/8/15 14:41:47
 
主题:熬夜整理的常用开源软件编译流程
摘要:…… -E UTF8 --locale=zh_CN.UTF-8 -U admin -W

第四步:在contrib/start-scripts/linux有个启动脚本,拷贝到/etc/init.d,改名称pgsql,用vi打开看看有什么需要改动的地方。顺便说下,vi是必须要学会的工具,不会这个工具,都不好意思说自己搞开源的;

第五步:sudo chkconfig --add pgsql,设置开机启动。

启动如果有错,大家可以到pgdata下面有个serverlog,看下是什么错误再去解决。……
作者:ebizmis 时间:2017/8/13 19:20:42
 
回复:……ing.UTF8.GetBytes(bodys);
          using (Stream stream = httpRequest.GetRequestStream())
          {
          stream.Write(data, 0, data.Length);
          }
          }
          try
          {
          httpResponse = (HttpWebResponse)http……
作者:ozhy1 时间:2017/8/13 20:39:30
 
主题:Delphi xe 10官方的经典蓝牙的demo问题
摘要:……ing.UTF8.GetString(LData));
          Form1.DisplayR.GoToTextEnd;
          end);
          Sleep(100);
        end;
      end;
    except
      on E : Exception do
      begin
        Msg := E.Message;
        Synchronize(procedure
         ……
作者:limuzi2012 时间:2017/8/4 11:03:34
 
回复:……SET_UTF8), decryptKey), Constants.CHARSET_UTF8);
        } catch (Exception e) {
          throw new SecretException(e);
        }
    }

    /**
     * AES解密
     * 
     * @param encryptBytes
     *          待解密的byte[]
     * @param decrypt……
作者:xlonger 时间:2017/7/26 9:33:07
 
回复:……SET_UTF8), encryptKey);
        } catch (Exception e) {
          throw new SecretException(e);
        }
    }


/**
     * AES加密
     * 
     * @param content
     *          待加密的内容
     * @param encryptKey
     *          加密密钥
     * @r……
作者:xlonger 时间:2017/7/26 9:30:15
 
回复:可用的东西现在很多了,我也贴一下。。。

webpascal 脚本模型

你编码用utf8应该就不会乱码了。
作者:star5 时间:2017/7/26 8:35:53
 
回复:  stream := TStringStream.Create(JsonObject.ToString, TEncoding.UTF8);
作者:jjwwang 时间:2017/7/22 17:57:22
 
回复:获取编码用utf8...一般是这个。
作者:letianwuji 时间:2017/7/8 16:41:41
 
回复:你要确定是utf8编码才能用utf8解码。
另外,还要确定有没有经过百分号编码,一般utf8都会和百分号编码一起用的。

再有就是,你也可以尝试使用mutibytetowidechar这个api函数来转
作者:bahamut8348 时间:2017/7/3 10:44:54
 
回复:……ing.UTF8;
  size := TEncoding.GetBufferEncoding(tmpBytes, Encoding);
  Result := Encoding.GetString(tmpBytes, size, Length(tmpBytes) - size)
end;


这个哪位高手帮忙 改一下,不使用 TEncoding,实现同样功能,支持2007.……
作者:xlonger 时间:2017/5/5 20:57:36
 
回复:你把标题转成utf8试试。内容不乱码是因为有额外的标识,id库函数帮你做过转换了。

另外好奇一下,linux下控制台程序也可以使用定时器?你又是怎么添加的?
作者:nevergrief 时间:2017/5/5 15:30:27
 
回复:……ing.UTF8;
  src := TStringStream.Create(str, AEncoding, False);
  dest := TStringStream.Create('', TEncoding.ASCII, False);
  try
    Encode6BitBuf(src, dest);
    Result := dest.DataString;
  finally
    FreeAndNil(src);
    FreeAndNil(dest);……
作者:wang_80919 时间:2017/4/25 9:56:33
 
回复:@lzpsoft (小牛)
服务器配置有问题,关键就在character_set_server=latin1 这里,找网站服务商帮你改一下配置,将服务器上的配置文件my.ini改一下:
[mysqld]
character-set-server=utf8
作者:c5soft 时间:2017/4/9 14:42:28
 
回复:UniConnection.SpecificOptions.Values['charset'] := 'utf8';
UniConnection.SpecificOptions.Values['useunicode'] := 'useunicode';
作者:iapeng 时间:2017/4/8 21:13:48
 
回复:@lzpsoft (小牛)
简单测试了一下,7.0.1中文支持非常好。Delphi7下将UniConnection的useUnicode设置为False,Tokyo下设置为True,Charset空着即可。

问题要点:
1.建数据库时:
CREATE TABLE 数据库名 (
字段名 varchar(40)
) DEFAULT CHARSET=utf8;

2.my.ini配置
[mysqld]
character-set-server=utf8

用mysql命令显示应该这这……
作者:c5soft 时间:2017/4/7 22:08:08
 
回复:下载了Flying Wang分享的FastReport5.4.6修改版,其中有C5Soft提供的,
"FastReport 5.X for Delphi 7 fr3 UTF8 Fix_By c5soft_201553001252 to 5.3.16.rar"和"FastReport 5.X for Delphi 7 fr3 UTF8 Fix_By c5soft_201553001252.rar"两个文件,前者在frxStrToXML()方法中不再无条件替换,后者仍与5.4.6代码一样无条件替换。我该使用……
作者:delphiboxbaby 时间:2017/3/30 11:34:06
 
回复:“C++11中规定,utf8编码应能表示全世界所有民族的所有字符”,C+11中没有这样的规定,C++的标准(在C++11之前已经存在,并且在C++11中没有更改)中说,wchar_t Required to be large enough to represent any supported character code point (32 bits on systems that support Unicode. A notable exception is Windows, where wchar_t……
作者:liyanhong 时间:2017/3/28 14:04:33
 
回复:     明码文件,是指文件内容为采用某种编码格式的字符串,诸如txt、cpp、xml、pas   等文件,这些文件都存有相关的编码信息,比如常用的txt文件,可以采用很多编码格式,无相关的编码信息,无法正确显示。BOM,是指采用utf8进行编码、且在文件尾部留有特殊信息的一种明码文件格式,现今大多数C/C++源文件建议采用这种格式。

我想说的是,编译C/C++源文件,大多数情况下勿需指定各种情形下所采用的编码格式。至于在代码中指明字符串编码、源文件的编码,我在上面的回答中已有叙述。
精力不济,对……
作者:lzj7015 时间:2017/3/27 19:48:12
 
回复:String str = u8"𥁐"显式指明为utf8编码,编译后依然是Unicode编码,是不是 String类的构造函数作了编码转码?试试 const char *str = u8"𥁐",看看 str 是什么编码的?
作者:liyanhong 时间:2017/3/27 15:10:16
 
回复:一并作答。
现今所从事的数据分析开发工作,主要服务于某大型购物网站,也常使用Python进行开发。
较高版本的CB的IDE打开或创建相关文件时使用的是utf8编码,CB的String类编码为Unicode,即便使用形如 String str = u8"𥁐" 显式指明为utf8编码,编译后依然是Unicode编码,所以上述代码中字符串不能正确显示,需另外的解决方法。这显然与C++11规范相逆,C++11中规定,utf8编码应能表示全世界所有民族的所有字符。
以前版本的CB没有这个问题。……
作者:lzj7015 时间:2017/3/27 12:41:02
 
回复:12楼的,你就不要再误导人了。
UTF8 是一种Uncoide的编码形式,换句话说,就是unicode
UTF16 也是一种Uncoide的编码形式,也是unicode
UTF32 同样也是

UTF8 以byte单位,可能以(1, 2, 3 ...) 个字节表示1个字符
UTF16 以word单位,可能以(2, 4, 6 ...) 个字节表示1个字符
UTF32 类推。

注意,Unicode是号称可以表示世界所有字符的,因此,在1个字符存储空间是不可能限定为固定字节数,以UTF16为……
作者:zwjchinazwj 时间:2017/3/17 9:55:54
 
回复:@wr960204 (武稀松) 
哈哈,歪了,我的错。

我只是作个猜测,大多数网页使用的是UTF8,原来在Delphi7下,String作为单字节串,存储UTF8,无须做任何数据转换。但是,到DelphiXE下,UTF8到UTF16的转换成为一个不可避免的事情。
作者:zwjchinazwj 时间:2017/3/16 18:34:41
 
回复:UTF8是存储用的,内存里用的一般都是Unicode 16 (UCS2) [大约包含96.9%的UTF16字符]。
作者:iamdream 时间:2017/3/16 8:54:48
 
回复:你确定unicode 是6个字节? utf8是unicode么?
作者:zwjchinazwj 时间:2017/3/16 8:51:34
 
回复:楼主,为啥我的 D7,base64 默认是 AnsiString 呢?
不过 UTF8 Unicdode 都支持的。
作者:wang_80919 时间:2017/3/9 8:30:31
 
主题:Tencoding到底要不要释放?
摘要:……ing.UTF8;
  EncodingArray[1]:= TEncoding.UTF7;
  EncodingArray[2]:= TEncoding.Unicode;
  EncodingArray[3]:= TEncoding.Default;
  EncodingArray[4]:= TEncoding.BigEndianUnicode;
  EncodingArray[5]:= TEncoding.ASCII;
  DestEncoding := EncodingArray[C……
作者:badwood 时间:2017/3/4 17:35:54
 
主题:brcc32手动编译rc文件中文路径有问题,那位大神有遇到过
摘要:手动建了rc文件(Ansi格式)里面包含中文路径的资源,brcc32编译时提示:Bad charcter in source input

我保存为UTF8或Unicode还是错误
作者:l_wming 时间:2017/2/21 15:48:24
 
回复:问题解决了,修改System.Win.Bluetooth.pas单元中的所有
TEncoding.UTF8为TEncoding.Unicode
官方此单元中的字符集转换写的也有点乱,有用unocode的有用utf8
作者:abcjingtong 时间:2017/2/21 10:56:59
 
回复:没有正确的。
UTF8 和 ANSI 都是 Byte 为单位的。
如果写 Byte * 其实也一样。
Byte * 或 Char * 一般默认Ansi 。

如果希望传 UTF8 必须写文档。
作者:wang_80919 时间:2017/2/20 16:31:12
 
回复:文档里真的没有说明,Flying Wang,utf8 正确的方法应该是什么,也好教我去数落一下那个作者
作者:ken0137 时间:2017/2/20 15:54:44
 
回复:说明 DLL 作者是白痴,居然用 Char * 传 utf8 ,也不说一声。
难道,大家是这个 DLL 作者肚子里的蛔虫?

当然,也许人家文档说了,你瞎,没看见。
作者:wang_80919 时间:2017/2/20 11:28:17
 
回复:我的测试代码有这句,你加下看看是否可以解决

procedure TForm1.IdHTTPServer1ContextCreated(AContext: TIdContext);
begin
  AContext.Connection.IOHandler.DefAnsiEncoding := IndyTextEncoding_UTF8;
end;
作者:teclick 时间:2017/2/20 10:03:37
 
回复:RTC可用,和版本无关。
解决方法比较简单,放在这边给有需要参考下:
1)网页必须使用UTF-8的编码;
2)获取文件名时加个 utf8Decode 函数即可。

没时间,要不就用这个思路再试试看Indy,不过Indy的编码非常奇怪,不像是UTF8的格式。
作者:chonghai 时间:2017/2/19 13:27:58
 
回复:文件名只不过是个字符串,indy 他不负责,字符串编码。
你自己编码,然后转 URLEncode。
你服务器端,获取到 URLEncode 的文件名,再转为 字符串。

FTP 文件名都是这样做的。一般用 UTF8 编码。全球通用。
作者:wang_80919 时间:2017/2/17 14:51:34
 
回复:PAnsiChar

PWideChar
请指定一种。
内容要 #0 结尾。


var
  A: PAnsiChar;
  W: PWideChar;
  U: PUTF8Char;
begin
  A := Addr(TEncoding.ANSI.GetBytes('你的字符串' + #0)[0]);
  W := Addr(TEncoding.Unicode.GetBytes('你的字符串' + #0)[0]);
  U := Addr(TEncoding.UT……
作者:wang_80919 时间:2017/2/17 12:12:52
 
主题:Delphi/C++ Builder 10.1 柏林更新内容简译
摘要:……串默认用UTF8
7、FireDAC

增强各种数据库支持
8、DBExpress

移除了对 OpenSSL 和 Indy 的依赖
9、云服务

Amazon 和 Azure API 增强
10、REST

移除了 REST.Exception 单元
11、LiveBinding

Use EvalShortcut 属性默认为 true,可以加快 TListView 和 TGrid 的显示速度
公开了 TConverterUtils 类
12、RTL

Win……
作者:chineseswish 时间:2016/4/11 13:10:27
 
主题:老问题求助:delphi7用idhttp.post上传文件,服务器返回的json数据中部分中文乱码
摘要:代码如下
SS:=TStringStream.Create('');
HttpClient := TIdHttp.Create(nil);
MutPartForm.AddFile('file', '文件路径', GetMIMETypeFromFile('文件路径'));
MutPartForm := TIdMultiPartFormDataStream.Create;
HttpClient.Post(UTF8Encode('服务器地址'), MutPartForm,SS);……
作者:messigoal 时间:2017/1/9 10:11:17
 
回复:服务端也是你自己处理的吗?你要确保服务端输出的内容,编码统一,如果部分用utf8部分用gbk,那你先不要urlencode解码,接收后,再分别解码,才可以。
作者:star5 时间:2017/1/9 11:13:11
 
回复:……一般使用UTF8,Delphi默认的UTF16会导致字符串转换无处不在。如果考虑到处理Web内容,更是如此。……
作者:zwjchinazwj 时间:2016/12/30 10:38:53
 
回复:……ing.utf8.getbytes(jsonstr),0) as tjsonobject;
      jo := (jo.GetValue('text') as TJSONArray).Get(0) as TJSONObject;
      s3:=jo.GetValue('rwcreat').Value;
      showmessage(s3);
   finally
    jo.Free;
   end;
end;……
作者:yczjs 时间:2016/12/25 16:57:24
 
回复:……ing.utf8.getbytes(jsonstr),0) as tjsonobject;
      jr:=TJSONArray(jo.GetValue('text'));   //获取数组里的数据
      s3:=jr.ToString...;   //下面不知怎么办
      showmessage(s3);
   finally
    jo.Free;
   end;
end;……
作者:898225836 时间:2016/12/25 13:33:49
 
回复:内部编码也可以统一成UTF8,但比WideString更麻烦一些
作者:c5soft 时间:2016/12/17 15:35:28
 
回复:右键设置源码格式为UTF8.

其实还是同一个问题,我假设你你使用2009以后的高版本Delphi,那么你的
WParam(Length(strMsg))
计算字符串长度结果为5,但占了10个字节。
也就是此时你的dwsize=5

然而Move的单位是byte,这样拷贝5个byte,肯定内容不全啊。
修改办法,直接使用:
    dwsize := DWORD(Msg.wParam);
    SetLength(Smessage, dwSize); // 这样设置宽字符串,还是5……
作者:nevergrief 时间:2016/12/12 21:27:15
 
回复:非常感谢nevergrief (孤独骑士)老师的回复,改成PAnsiChar结果是一样的。你是说在线程中把发送的消息存为UTF8格式的字符串?如何存成UTF8格式的字符串?请指教!谢谢!
作者:iamcws 时间:2016/12/12 19:18:37
 
回复:win7以上的英文系统可以显示 utf8 文字...xp/vista 无法显示,必须中文字库;而且更改麻烦
作者:sun2016 时间:2016/12/12 18:14:12
 
回复:把源代码存为UTF8试试

另外,Move命令好像只能以Byte为单位拷贝,所以你用PCHAR为单位好像是错的,改成PAnsiChar试试(不管你什么版本Delphi)
作者:nevergrief 时间:2016/12/12 17:51:56
 
主题:indy10 tcpserver 与tcpclient 发送的数据问题
摘要:……ing_UTF8);         
        Thesize:=Strtoint64def(ThtStr,0);
        if Thesize>0 then
          begin
          try
          RsltStream := TmemoryStream.Create;
          Form1.IdTCPClient1.IOHandler.LargeStream:=true;
          Form1.IdTCPCli……
作者:liu494021458 时间:2016/11/10 7:43:40
 
回复:转换成tbytes后接收的数据是乱码!
用TEncoding.UTF8.GetString 转码都不成功
StringOf,PlatformStringOf,WideStringOf
作者:liu494021458 时间:2016/11/8 13:29:30
 
主题:大家多多讨论下,现在是越来越需要到移动设备上去打印了
摘要:

现在有三种方式

1.移动端 wifi 连到windows电脑上的共享打印机,或自带共享服务器的打印机

2.移动端 用蓝牙方式连接打印机

3.移动端 通过usb转接线直连打印机

我看了一下 xe10.1带的例子,BlueChat
想下当年也是在dos 用c写过类似的的这种控制pos58小票打印机打小票
所用的方法类似
TEncoding.UTF8.GetBytes(FStringsToWrite[I]);  //这里是写

还有一个TReadTHread 去读
……
作者:xingyunmm 时间:2016/10/27 18:51:23
 
主题:分享:新版mydac for XE Berlin的中文问题
摘要:在XE10.1上用了新版的mydac(mydac7.6.11 Full Source for Berlin),用到utf8编码,需要加上下面这段,不然会乱码,并且插入/更新中文数据会报错。
  FConnection.Options.UseUnicode:= True;

原代码(D7):
  FConnection:= TMyConnection.Create(nil);
  FConnection.Options.Charset:= 'utf8';

新增后(XE10.1)
  F……
作者:looper 时间:2016/10/25 11:37:20
 
回复:to  looper 
我当初是在对象观察器的TMyConnection.Options里找到的,和字符集相关的就Charset和UseUnicode这两个选项,确实点点鼠标就可以。不仅如此,我记得Unidac更方便,双击控件就会显示这些选项。

不过我还要提示一下,不是这样设置了就一定可以了。mysql其实还有输入接受的时候的编码,存储时候的编码,传输出来时候的编码,最好全部设置为utf8,这样才能万无一失。否则光Delphi设置对了还是不够的。

最有趣的一种情况,mysql存储时候的编码错……
作者:nevergrief 时间:2016/10/25 21:04:53
 
回复:……si,无Utf8),ARC(只能使用ARC)这些都毫无疑问的表明,此人根本不属于Delphi阵营。其想法很可能是想通过Mobile平台,反过来影响Windows平台的用户,使用户慢慢的不得不接受这样的变化。现在,他们说在Windows平台加入ARC(选项),在我看来,也极有可能是
实现这种转变的一环。因为在mobile平台,仍然是ARC only. 因此,要想些windows和mobile下都可以用的代码,就必须ARC。此人仍然没有放弃继续推行他的ARC的世界。……
作者:zwjchinazwj 时间:2016/10/24 17:41:35
 
回复:设置 DefStringEncoding := IndyTextEncoding_UTF8

但是无效!
作者:goodboysoft 时间:2016/9/30 15:36:00
 
回复:楼主,我按照你提供的代码格式,各参数没问题(我用淘宝的api测试了),提示错误sign不正确。我用的是delphi2010,也是发验证码,转了下utf8(不转也不对),帮忙给看看吧,sign要注意啥,谢谢
var
  lvSecret: string;
  lvStrings: TStringList;
  i: Integer;
  lvSign: string;
  lvMD5: TIdHashMessageDigest5;
  lvResponse: TStringStream;
b……
作者:h0730zhan 时间:2016/9/26 11:11:20
 
主题:Delphi的 UPnP单元
摘要:……ing_UTF8);

        // 镱塍鬣屐 铗忮?
        LResponseStr := LNet.IOHandler.ReadLn(LF, 1000 * 10);

        // 镳钼屦屐 铗忮?
        if (Pos('200 OK', LResponseStr) <> 0) then
        begin
          Result := True;
        end;

//        if……
作者:xuchuantao 时间:2016/9/22 22:27:24
 
主题:indy的idftp获得服务端list时中文为'???'
摘要:我的os是win10,开发环境是delphi xe8,indy 10.6.2。代码如下
  IdFTP.Connect;
  IdFTP.DefStringEncoding := IndyTextEncoding_OSDefault;
  IdFTP.IOHandler.DefStringEncoding := IndyTextEncoding_OSDefault;
  if not IdFTPEnabledUTF8(IdFTP) then
  begin
    Application.Me……
作者:wazhl 时间:2016/9/8 15:44:58
 
回复:尝试了xuchuantao说的,IdFTP.List已经按照UTF8进行处理,但是获得的List依然是'???'
作者:wazhl 时间:2016/9/9 8:58:50
 
回复:if IdFTP.DefStringEncoding = IndyTextEncoding_UTF8 then
    begin
      IdFTP.List();
    end
    else
    begin
      IdFTP.List('', False);
    end;
for i := 0 to IdFTP.DirectoryListing.Count - 1 do
    begin
      VirtualNode := FTPTreeView……
作者:xuchuantao 时间:2016/9/8 22:06:58
 
回复:1、开启AUTOFEAT
2、赋值IndyTextEncoding_OSDefault时要先判断是否支持UTF8,开启UTF8,赋值这个就不对了。
作者:badwood 时间:2016/9/8 17:47:34
 
主题:用IDFTP上传中文文件名的问题
摘要:环境XE6。
用IDFTP.put上传中文名文件。
因为FTP不支持UTF8,上传的文件名显示为问号。
将文件名转码GBK,但结果仍然是问号
请教该怎么解决。
作者:badwood 时间:2016/9/5 14:48:34
 
回复:function IdFTPEnabledUTF8(IdFTP: TIdFTP): Boolean;
begin
  Result := False;
  if Assigned(IdFTP) then
  begin
    if IdFTP.Connected then
    begin
      IdFTP.Quote('FEAT');
      if IdFTP.IsExtSupported('UTF8') then
      begin
        cas……
作者:xuchuantao 时间:2016/9/6 19:00:26
 
回复:仔细阅读了INDY的源码,再次尝试,解决了。

idftp1.iohandler.defstringencoding赋值IndyTextEncoding_OSDefault后在不支持UTF8的FTP下上传中文正常。

前面测试各值的时候,不知道为什么偏偏漏掉了这一个唯一有效的……
作者:badwood 时间:2016/9/6 8:41:32
 
回复:因为使用的FTP不支持UTF8,所以直接上传后显示的是问号。

但我将文件名转GBK码后发布仍然是问号,我后来查了下,发现idftp.put的函数定义如下:
    procedure Put(const ASource: TStream; const ADestFile: string;
      const AAppend: Boolean = False; const AStartPos: TIdStreamSize = -1); overload;
    procedure Put(……
作者:badwood 时间:2016/9/5 17:57:47
 
主题:DelphiXE8新增原生Http控件,挺棒的。
摘要:……ing.UTF8);
  // 访问百度
  NetHTTPClient1.Get('http://www.baidu.com', m_Stream);
  Memo1.Text := m_Stream.DataString;
end;

end.……
作者:tianpanhaha 时间:2015/5/14 1:39:50
 
回复:……Set=UTF8;Login Prompt=False';
    pgconn1.Connected := true;
    pgtable1.connection := pgconn1;
    pgtable1.TableName := 'biz_wqmeminfo';
    pgtable1.active := true;
    memo1.lines.add('before filter:'+inttostr(pgtable1.RecordCount));
   ……
作者:fausten 时间:2016/8/21 10:10:22
 
回复:……ing.UTF8);
    ss.WriteString('<?xml version="1.0" encoding="UTF-8"?><error></error><page rowcount=''2'' colcount=''3''><row><d>430000001</d><d>A类商品</d><d>10</d></row><row><d>430000002</d><d>B类商品</d><d>10</d></row></page>');
    ss.WriteStri……
作者:biznow 时间:2016/6/25 14:18:24
 
回复:function IdFTPEnabledUTF8(IdFTP: TIdFTP): Boolean;
begin
  Result := False;
  if Assigned(IdFTP) then
  begin
    if IdFTP.Connected then
    begin
      IdFTP.Quote('FEAT');
      if IdFTP.IsExtSupported('UTF8') then
      begin
        cas……
作者:xuchuantao 时间:2016/6/23 23:22:42
 
回复:问题在于TIdFTP.ExtListDir 函数使用了UTF8来解码数据,并且没有检查服务器是否为UTF8编码,造成的乱码.
作者:xuchuantao 时间:2016/6/23 23:18:33
 
回复:@vmao
你租vps呀,相当于你的一台电脑放在云端,想装啥装啥。

@各位
大家好像没有理解我的意思。服务器端你可别跑脚本,服务器端你用JsonDataObjects将dbGO/UniDAC的数据转换成UTF8编码的Json格式返回浏览器。需要你精通的是javascript语言,软件能力取决于你javascript编程能力,功夫都花在浏览器那端,html、css你也得懂。后台你随时可以换,想用php,scala,c++也可以,不就是一个ajax应答吗。但是咱们,用delphi写起来最随手。
作者:c5soft 时间:2016/6/14 9:07:51
 
回复:……完全采用UTF8编码,也可以在free pascal下编译,在linex下跑。这里批评一下RealThinClient,连ANSI编码都只做了单字节的,看来压根儿没打算离开欧美。

附测试代码:……
作者:c5soft 时间:2016/6/7 22:03:47
 
回复:搜索“Could not find source location to add method ”

结果英文论坛也有相同的问题,从D7升级到2010:
http://embarcadero.newsgroups.archived.at/public.delphi.ide/201010/10101911045.html

补充:我在Delphi 2010 IDE里手动把pas文件一个一个的改成utf8编码,不知这个有没有影响。但是编译运行确实没有任何问题。
作者:nevergrief 时间:2016/6/6 0:41:41
 
回复:为什么不用json呢?utf8格式就行。
作者:star5 时间:2016/6/1 17:25:40
 
回复:Content-Type:text/plain; charset=utf-8
修改一下.
TStringStream.Create('', TEncoding.UTF8);

后面那UTF8Decode就可以去掉了.
ip:=rs.DataString;
作者:tuesdays 时间:2016/6/1 16:35:14
 
回复:……ar; Utf8: bool): PChar; stdcall;

由调用者申请空间, 传入首地址和长度即可, 如果按照你的做法, 在函数内部申请空间, 那么你的dll就要提供free()接口函数来释放内存.……
作者:zhangl 时间:2016/6/1 9:23:58
 
回复:编译前转换一下编码格式:

unit CodePage1250toUTF8Main;

interface

uses Winapi.Windows,
  Winapi.Messages,
  System.SysUtils,
  System.Variants,
  System.Classes,
  Vcl.Graphics,
  Vcl.Controls,
  Vcl.Forms,
  Vcl.Dialogs,
  Vcl.StdCtrls;

type
  TF……
作者:c5soft 时间:2016/5/30 21:06:28
 
主题:RAD Studio 10.1 Berlin 编译报这个错误怎么回事?
摘要:No mapping for the Unicode character exists in the target multi-byte code page

我是读取一个utf8+ 的日志文件... 用的是
fs:=TStringStream.Create('',TEncoding.UTF8);
作者:tuesdays 时间:2016/5/26 15:10:44
 
回复:function URLencode(const str: PChar; Utf8: bool): PChar; stdcall;
var
  i, len, charSize: integer;
  maxSize, actSize: integer;
  p: pointer;
  index: integer;
  wrd: string[4];
begin
  charSize := StringElementSize(str);
  len := Length(str);
 ……
作者:bmsr 时间:2016/5/7 3:11:10
 
回复://URL编码  UTF8 and gbk
function URLencode(const str: PChar; Utf8: bool): PChar;  stdcall;
var
  i, len: integer;
  temp, Str1: string;
begin
  if Utf8 = True then
    Str1:= AnsiToUtf8(str)
   //Result:= PChar(HttpEncode(UTF8Encode(str)))

  else……
作者:ztcjn 时间:2016/5/7 0:31:14
 
回复:mysql 是utf8吗?

uniquery.sql.Add('SET NAMES ''utf8''');
uniquery.ExecSQL;
作者:sinagirl 时间:2016/5/5 7:00:24
 
回复:……ing.UTF8) ;//格式最重要
        try
          try
          id.IOHandler:=iohandle;
          iohandle.SSLOptions.Method:=sslvTLSv1;
          id.Get(url,s);
          result:=s.DataString;
          except
          end
        finally
          F……
作者:olddelphier 时间:2016/5/3 15:06:18
 
主题:求助如何读取文件编码格式
摘要:16进制文件头是空的,可是用记事本打开另存的时候显示是UTF8,就是读取不出来文件是UTF8的,,
作者:lwcvod 时间:2016/4/14 21:24:13
 
回复:没有按照这个头来,读不出文件是 UTF8
作者:lwcvod 时间:2016/4/14 21:27:19
 
主题:Delphi使用idhttp怎么post一个UTF8编码xml格式的数据包?
摘要:用了好几个例子都不行:

sltmp := TStringlist.Create;
fsParams := TMemoryStream.Create;
try
  sltmp.Add(UTF8Encode
    ('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>'));
  sltmp.Add(UTF8Encode('<Check>'));
  sltmp.Add(UTF8Encode('<TotalFee>100……
作者:yesin119 时间:2016/3/18 9:13:17
 
回复:fsParams := TStringStream(xmlStr,TEncoding.UTF8);
idhtpSvr.Request.ContentType := 'text/xml';
  mmoXmlInfo.Text := idhtpSvr.Post(C_POST_URL, fsParams);
作者:wang_80919 时间:2016/3/18 9:23:21
 
主题:折腾了好久最近终于折腾成功了erlang+delphi+android+mysql插入中文
摘要:开始各种混乱 问人家都说 可以存中文 自己就是不成功, 好久终于妥协方案成功了 ,心里总别扭 这次又折腾,呀真成功了,一个人折腾这3种语言 真高血压 不过也挺高兴,梦想照进现实又近了一步 。
使用 werl  
mysql 数据库 utf8 序列 utf8_general_ci

procedure TForm1.Button1Click(Sender: TObject);
var
  sm:TStringStream;
begin
sm:=TStringStream.Create(''……
作者:msfm 时间:2016/2/20 22:24:42
 
回复:linux server下个版本只是控制台.估计下下个版本会有FMX for Linux吧.
当然也有可能他们就没打算要Linux桌面市场.
utf8字符串那个我猜也就增加一种数据类型.
utf8确实是给用英语的人设计的,因为实用英语的时候uft8比utf16节省一半空间.但是在使用中文等语言的时候却要额外浪费不少空间.
但是如果增加了这样一种数据类型确实多了一种选择.
我猜是不是因为Mobile平台屏蔽了Ansistring,用英文的人觉得太浪费了,增加个utf8字符串类型来点安慰
作者:wr960204 时间:2016/2/12 21:35:23
 
回复:utf8就是unicode,是unicode的一种编码形式,以后别说utf8怎么样,还是unicode好,这样会闹笑话的。
作者:zwjchinazwj 时间:2016/2/12 11:46:03
 
回复:UTF16一样“会照成字符串长度和内存占用不符”

请好好Baidu或者google下UTF16, UTF16与UTF8规则是一样的,gcc中的wchar是4字节,就是因为UTF16中有4字节的字符。注意,是4字节,不是你经常看到的2字节。

Unicode号称可以表达世界上任何字符,都是学计算机的,1个word最多6W个不同的值,只能表达6w不同状态,光中文,都可以占用2,3万,还有少数民族文字。

所以,你必须清楚一点,要想号称能表达世界“包括未知的外星文字”所有字符,必须是不定长的。
作者:zwjchinazwj 时间:2016/2/12 10:31:56
 
回复:现在内存已经不是问题了,utf8会照成字符串长度和内存占用不符,还是unicode的方便。
作者:fausten 时间:2016/2/12 10:15:41
 
回复:to bmsr (白忙剩人)
"完全看不懂你们争论的意义在那里?" 
Delphi for Mobile 是没有AnsiString的
只有UTF16。所以,不是在AnsiString或者UTF8的前提下增加了UTF16,这就是区别。而且并不是支持不鸟,是能支持,却故意屏蔽。

问题来了:是什么原因导致当初这么设计?
作者:zwjchinazwj 时间:2016/2/12 9:44:32
 
回复:我理解 原生支持的意思应该是多了一种字符串类型吧 比如utf8string 对应于以前的
ansistring widestring string/UnicodeString(UTF16).然后这些类型的字符窜互相之间赋值将会自动转换.于是

var
 s:string;
 su8:utf8string;

begin
 s:='测试';
 su8:=s;
result:=su8;
end
还有就是可以直接length utf8的字符串的个数了,而不需先转换成string 也就……
作者:bmsr 时间:2016/2/12 1:16:07
 
回复:c++/c的确没有UTF8,甚至可以说c++就没有原生支持任何一种字符串编码,就更不用说UTF8或者UTF16,

char * 原本是用来存储ansi string, 但是由于并没有明确指定ansi编码,因此
使用char *用来存储utf8 gb2312 big5都没有问题。带来的问题是,编码者自己必须清楚char *里面到底存储的是什么,需要自己按需求作转换。

wchar *是VC后来引入,用来存储unicode(UTF16)的,但是wchar *与unicode真的没有任何强联系。并不……
作者:zwjchinazwj 时间:2016/2/11 20:42:22
 
回复:我感觉C++没有Native的UTF8,首先是我没发现,其次是网上有一些类库为此专门提供了UTF8类、方便使用。前一阵还为类库的char*烦恼过,到处要自己手动把UTF16转换成UTF8才能传入,烦不胜烦。
作者:nevergrief 时间:2016/2/11 20:12:00
 
回复:楼上的楼上没明白什么叫原生支持UTF8,就一个问题不知道是否能回答:C++或者C是否有Native的UTF8,Window是C/C++开发的,Windows内部unicode与c++不原生支持unicode冲突吗?
作者:zwjchinazwj 时间:2016/2/11 19:55:33
 
回复:1、记得 window 内核是 utf16(映射到 delphi 的 widesting) 而 linux 内核默认是 utf8(当然,据说可以设?)delphi 为了支持 linux server 引入 Native support for Utf8String type on all platforms 很正常
2、说“正道”还是夸大了些,多了一个选择罢了(类似现在 unicodestring 来了对了 xxxstring 还在);实现上,所谓的 Native 估计类似 System.AnsiStr……
作者:lsuper 时间:2016/2/11 18:24:56
 
回复:人家西方人都决定使用UTF16,而不是UTF8(这样对他们更有利),你瞎操什么心嘛!

再说Windows内部不也是UTF16?你干嘛不骂,为什么VB C# WINDOWS 不提供原生UTF8

就我自己的体会而已,UTF8主要是为了兼容而出现的,并不见得就是最适合。话说刚才没仔细你的ID,你其实之前还帮助回答我的问题,只是你现在的观点我实在不能认同。

这几年我仔细研究Delphi后,得到的哲学观点是,Delphi那伙人是工程派,所有理论派的缺陷在他们那里都有很好的解决方案。真的不要小看了……
作者:nevergrief 时间:2016/2/11 18:23:19
 
回复:现在是UTF16, UTF8和UTF16都是Unicode String的表现形式
当然,作为Unicode的形式,还有UTF7 UTF32。

直接原生来UTF16,不提供原生UTF8,太过理想主意,步子太大,扯着蛋了。
负责产品特征规划的人已经与现实脱节,太理想化,

可惜这种脱离现实,过于理想主义精神还在延续
Living Binding, 全平台的FMX,哪个不是这种一个方案,包打天下的思维模式。
ARC 也是这种思维的延续,有了ARC,内存管理就不用操心了。
作者:zwjchinazwj 时间:2016/2/11 10:18:21
 
回复:現在的是UNICODE STRING, 不是UTF8STRING. UTF8 才是正道, UNICODE 會面對到LINUX 和WINDOWS 的UCS-2, UCS-4, 2 BYTES UNICODE 和4 BYTES UNICODE 的題.
作者:lordaeron 时间:2016/2/10 22:03:02
 
主题:delphi idhttp post php 無法傳回
摘要:procedure TForm1.Button3Click(Sender: TObject);
var vResponse: TStringStream;
    vParam:TStringList;
begin
// { gb2312=936,gb18030=54936,utf8=65001 }
vResponse := TStringStream.Create('', TEncoding.GetEncoding(65001));
try
idhttp1.request.charse……
作者:css1688 时间:2016/1/21 11:16:41
 
回复:……设置一下utf8 和 useunicode……
作者:xigua163 时间:2016/1/5 1:06:27
 
主题:遇到错误No mapping for the Unicode character exists in the target multi-byte code page
摘要:我在XE6里用tencoding处理这个utf8的网页
http://www.jiukuaiyou.com/deal/75820573
的源码时。
出现错误“No mapping for the Unicode character exists in the target multi-byte code page”

导致不能正确显示内容。
直接用UTF8Decode则会出现一些乱码字符。

但浏览器都能正常显示。

请教该如何解决此问题。
作者:badwood 时间:2014/11/22 13:02:14
 
回复:转一个解决方案,经测试有效。

1. 发过去的是乱码如下处理, 服务器采用的是UFT-8编码的情况下
uses  HTTPApp;
     sPost := HTTPEncode(UTF8Encode('中文POST数据'));


2. 返回的是乱码如下处理
ResponseStream:=TStringstream.Create('',TEncoding.UTF8);
idhttp.Post(ConnectUrl,sends,ResponseStream);

希望对L……
作者:chonghai 时间:2015/12/25 23:43:20
 
回复:代码转为utf8就好了。
作者:henreash 时间:2015/11/21 18:35:28
 
回复:1:首先 rzdbgrid 偏门不建议使用

2:可以找下 rzdbgrid 有没有 utf8 选项,或增加列后,列有没有autosize之类选项;
   或试试font字体 charset = DEFAULT_CHARSET ,name=Tahoma

3:以前类似的问题都是要自己计算中文字符串的长度,然后再计算grid宽。
  具体如何做自己慢慢搜吧..

  不用google,用baidu,有bing啊

  end........good luck.....
作者:ww1000 时间:2015/11/20 18:24:37
 
主题:emoji字符的问题
摘要:var jString:string;
RStream : TStringStream;
begin
RStream := TStringStream.Create('', TEncoding.UTF8);
    IdHTTP1.Get('https://xxxx.com, RStream);
jString:= RStream.DataString;
end;
网页是utf8格式,平时都能正常,我的问题是,当get的网页数据里面含有emoji表情的时候(utf8四字节),出来jSt……
作者:glkkkk 时间:2015/10/29 16:02:57
 
回复:明白了,谢谢,终于搞清楚原因了,之前导出数据的软件有问题,导致导出的表格根本无法打开,表格名乱码,现在我新建了一个空数据库,设定Encoding=UTF8
(StringFormat=Unicode//此句有必要吗?),然后再用SQLite Developer导入就OK了
作者:yinchh 时间:2015/10/30 9:22:26
 
回复:有个 属性 utf8
作者:wang_80919 时间:2015/10/28 16:11:10
 
回复:先做UTF8或者base64转换,再加密即可
作者:ghs_79 时间:2015/10/28 8:25:20
 
主题:有什么好办法识别utf8 无bom和ansi区别?
摘要:看很多文章都是说判断文件头前三个字节,但是ansi编码和utf8 无bom编码无法通过这种方式判断,有什么好办法吗?

而且对于特殊文字,比如 联通 这类的,很容易判断错编码类型
作者:lovezyp 时间:2015/10/13 14:10:54
 
回复:IsUtf8String就是检测文本是否在UTF8的定义范围内,全部都在范围内,就认为是UTF8,否则就是Ansi,简单地判断是UTF8还是ANSI,用IsUtf8String就可以了。
当然,如果更复杂的判断,,只能靠猜了。
可以参考我之前的一个方法:http://dreamisx.blog.163.com/blog/static/11500483920122134947776/
作者:iamdream 时间:2015/10/14 9:44:29
 
回复:楼上的,别一知半解,IsUTF8String 是检测字符串里是否含有貌似utf8编码的字符, 用的办法就是猜.
作者:gmxyb 时间:2015/10/13 20:49:49
 
回复:无 bom 可以所以官方提供的函数 IsUTF8Encoding 或者叫做 IsUTF8String 函数。

只支持 ANIS 和 UTF8,不支持 Unicdoe 。
作者:wang_80919 时间:2015/10/13 14:48:13
 
主题:utf8 TMemo读入不完整
摘要:demo3.txt为原始的txt文档,TMemo读入不完整
demo_notepadSaveAs.txt为记事本打开后另存文件,TMemo读入正常
作者:biznow 时间:2015/10/3 1:42:21
 
回复:1,
我在XE7、8下都用过NativeXMl,包括老一点的3.x和最新的Github上的,都没发现过这个问题?你是不是没有拷贝他的.inc文件啊,这里的D5UP显然是一个自定义的标识。要有{$DEFINE D5UP}才算数,如果找不到定义,你还不如直接删掉这个$IFDEF呢。

2,
编码我用默认UTF8,没这个问题。为啥非要用GB2312呢?UTF8对于英文还能节省字节,中文也支持吧。

现在的项目已经没用NativeXML,虽然这个东西很方便,也能跨平台,不过我程序中XML的使用比较简单……
作者:ceteric 时间:2015/9/12 17:27:10
 
主题:XE8Up1+MySQL5.6.25,使用TFDConnection链接...打开汉字乱码,怎么解决?
摘要:fdcTest:TFDConnection
   
    fdcTest.Params.Values['CharacterSet'] := 'csUtf8';
    fdcTest.Params.Values['ServerCharSet'] := 'utf8';

MySql也检查了,全部是使用UTF8编码。
但是怎么弄中文还是乱码,这方面资料也非常少。
TFDConnection在网上资料基本为0,请大侠指点~
作者:yesin119 时间:2015/9/7 18:20:27
 
回复:犯了低级错误。这样写:
fdcTest.Params.Values['CharacterSet'] := 'utf8';

自带的帮助已经很好了,不要非得看中文资料。
作者:earthsbest 时间:2015/9/8 9:14:39
 
回复:嗯,MySQL的字符串格式、传输字符串格式等等,都按照网上的相关解决办法同统一弄成了UTF8.
作者:yesin119 时间:2015/9/8 7:46:57
 
主题:TSqlConnection怎么连接MySQL数据库呢?貌似怎么弄都提示缺少文件~~求救
摘要:……= 'utf8';
    conWxMySqllink.LoginPrompt := False;
    try
      conWxMySqllink.Open;
      Result := true;
      LogInfo('[MySql服务器启动成功]');
    except
      on e: Exception do
      begin
        LogInfo(':●:[MySQL启动失败]'+e.Message);
   ……
作者:yesin119 时间:2015/9/3 15:04:01
 
回复:TFDConnection设置丰富,但是网上资料极少。现在连接是正常了,但是打开的数据都是乱码?这个问题也搞了一整天,MySql应该没什么问题。
也不知道TFDConnection通过哪个参数来设置编码?

    X.Params.Values['CharacterSet'] := 'csUtf8';
    X.Params.Values['ServerCharSet'] := 'utf8';

没什么效果~~~
作者:yesin119 时间:2015/9/7 18:23:24
 
主题:原来使用Httpapp单元中的HttpEncode升级后的一个坑,提醒还不知道的人一下。
摘要:原来项目中用的是Httpapp中的HttpEncode等函数,本身是不对字符串的CodePage进行处理的,是原样加密解密的,而升级后,DecodeString是套用了TNetEncoding中的函数,解析时是直接按UTF8进行处理,所以会导致部分是gb2312编码的URL解析出错,所以对于这些,要手工处理一下。
作者:crystalmoon 时间:2015/8/23 18:09:54
 
主题:请问怎么在Android显示GB2312 urlencode
摘要:Edit1.Text :='提交';
Edit2.Text:=httpencode(edit1.Text) ; //UTF8 urlencode结果为  %E6%8F%90%E4%BA%A4
Edit3.Text:=Tnetencoding.URL.Encode(edit1.Text);//UTF8 urlencode结果为  %E6%8F%90%E4%BA%A4
//Edit4.Text :=Tnetencoding.url.EncodeBytesToString( Tencoding.Get……
作者:aminghanhua 时间:2015/8/6 16:25:46
 
回复:服务器是UTF8编码的,在D7下正常的,我把代码放到XE8上不正常
http://app.25hours.cc:6077/webservice/25hours.asmx/StruUp
Post:data={"ShopID":1,"SyncVer":200}

    t:=TStringStream.Create('',tencoding.UTF8);
    idhttp1.Post(SvrUrl+postUrl,ts,t);
    Result:=Utf8ToAnsi(t.DataS……
作者:gmjimmy 时间:2015/7/19 13:55:17
 
回复:要看服务器上是什么编码,基本上也就gbk和utf8两种。
作者:star5 时间:2015/7/19 8:16:43
 
回复:@gdsa 能给个简单的html文件代码吗? 俺没发帖之前试过utf8, 发现没用.

谢谢!
作者:blbz 时间:2015/6/30 1:03:08
 
回复:html文件改成utf8格式
作者:gdsa 时间:2015/6/29 21:04:37
 
回复:楼上的 TEncoding. 有UTF8 居然没有 ANSI ?
建议入群讨论。

不然的话,不方便修改。
作者:wang_80919 时间:2015/6/2 11:55:37
 
回复:frxXML.pas代码修改成功。在Delphi7下打开原来的老格式自动保存为UTF8编码的新格式,
D7与XE8共享一套报表格式,XE8下打开再也不会出现乱码了。未做严格测试,试用前请先将原来的报表做好备份。
作者:c5soft 时间:2015/5/30 0:12:52
 
回复:我在12年写了一个程序,将整个文件夹下的所有文件全部转换:
http://download.csdn.net/detail/c5soft/4827987
现在琢磨的是彻底的解决方案,改FR的源代码。让D7保存为UTF8格式,让d7/XE+都能读取奇葩格式与UTF8格式,这项工程,不知道有人做了没有?

这样,对于一些简单的修改,替换操作,就可以使用UltraEdit直接修改报表格式,而不用进入报表设计器。

初步猜测应该是从frxXML.pas动手,一千多行代码需要完全搞懂蛮费功夫。
作者:c5soft 时间:2015/5/29 17:12:02
 
主题:recompiled error about Unit InUDPClient on IntraWeb 14.0.39 in Delphi XE7
摘要:……ser.UTF8 in 'IW.Parser.UTF8.pas',
IW.Common.System in 'IW.Common.System.pas',
IW.Common.Strings in 'IW.Common.Strings.pas',
IW.Common.AppInfo in 'IW.Common.AppInfo.pas',
IWUtils in 'IWUtils.pas',
IWURL in 'IWURL.pas',
IWTypes in 'IWTy……
作者:tonzi 时间:2015/5/8 15:33:10
 
回复:我目前没有 XE7 的,只有 XE8 的,XE8 是自动 UTF8 了。所以不需要我们写了。
作者:wang_80919 时间:2015/5/12 12:54:42
 
回复:不过我看了 XE8 的代码,那更加的不自由了。
全自动用 UTF8 了。倒是省心了。只要对方也用 UTF8,就没问题。
如果用 ANSI GB BIG5 等编码,就倒霉了。
作者:wang_80919 时间:2015/5/12 9:19:18
 
回复:不应该吧。文件名如果保证是 UTF8,应该没问题吧。
作者:wang_80919 时间:2015/5/5 17:20:40
 
回复:有白痴说我只是改了个 问号 问题。
那么我就列举下修改的地方吧。
1. 肯定是问号改了。
2. 将含有俄文的代码文件 修改为 UTF8 。
3. 修改 脚本编辑界面中文输入问题。
4. 为 recompile 1.06 特制 frcc.exe
5. 最重要的修改,增加更多的汉化文本。
作者:wang_80919 时间:2015/5/5 13:04:24
 
回复:最新的 recompile.exe 在调用 frcc.exe 的时候,加了个参数 -j 导致 旧版本的 中文 frcc.exe 无法使用了。

我做了一个新的。就是编译出来 900K 了。其他很好,如果加了 -j 就会生成 UTF8 的 pas ,好像 D7 编译的时候,不加 -j,所以,应该是所有版本都能用的。

UTF8 的 pas 才是真正的多国语言。
可以显示 各种外国语言。

但是 欧洲的 语言,默认都不加 -j 的,所以这样编译的 exe 可能在某些计算机上显示 欧洲的语言是 乱……
作者:wang_80919 时间:2015/5/5 13:04:00
 
回复:我只是声明,不希望你用。

你非常听话的不用。本人万分欣慰。

你来不来论坛,关我屁事。

有白痴说我只是改了个 问号 问题。
那么我就列举下修改的地方吧。
1. 肯定是问号改了。
2. 将含有俄文的代码文件 修改为 UTF8 。
3. 修改 脚本编辑界面中文输入问题。
4. 为 recompile 1.06 特制 frcc.exe
5. 最重要的修改,增加更多的汉化文本。
作者:wang_80919 时间:2015/5/2 9:02:40
 
回复:……Set=UTF8');
    try
      Connected :=True;
      if Connected then Log.WriteLog('数据库连接成功!');
    except
      on e:Exception do begin
        ShowErrorMsg(e.ClassName +':'+ e.Message,False);
      end;
    end;
  end;


----------
没有什……
作者:inbreak 时间:2015/4/23 14:41:54
 
回复:[url=http://s.taobao.com/search?q=%E5%95%86%E5%9F%8E%E6%BA%90%E7%A0%81&js=1&stats_click=search_radio_all%253A1&initiative_id=staobaoz_20150417&ie=utf8&style=list&sort=sale-desc]http://s.taobao.com/search?q=%E5%95%86%E5%9F%8E%E6%BA%90%E7%A0%81&js=1&stats_c……
作者:blbz 时间:2015/4/17 10:59:16
 
主题:firedac + FB 的奇怪问题
摘要:FB数据表是UTF8编码。
Table 中有 字段S类型 Varchar(100)。
直接通过FDQuery动态sql插入数据,当S对应的值中最后一个字符是半角的'!'(感叹号),执行后,感叹号会自动的被删除,如果插入两个'!!',查看结果,实际值写入了一个。
例如 : insert into table (s) value('abc!');
插入结果是 abc
例如 : insert into table (s) value('abc!!');
插入结果是 abc!

求……
作者:lsoft 时间:2015/4/14 17:42:23
 
回复:最新的 recompile.exe 在调用 frcc.exe 的时候,加了个参数 -j 导致 旧版本的 中文 frcc.exe 无法使用了。

我做了一个新的。就是编译出来 900K 了。其他很好,如果加了 -j 就会生成 UTF8 的 pas ,好像 D7 编译的时候,不加 -j,所以,应该是所有版本都能用的。

UTF8 的 pas 才是真正的多国语言。
可以显示 各种外国语言。

但是 欧洲的 语言,默认都不加 -j 的,所以这样编译的 exe 可能在某些计算机上显示 欧洲的语言是 乱……
作者:wang_80919 时间:2015/3/31 20:57:00
 
回复:最新的 recompile.exe 在调用 frcc.exe 的时候,加了个参数 -j 导致 旧版本的 中文 frcc.exe 无法使用了。

我做了一个新的。就是编译出来 900K 了。其他很好,如果加了 -j 就会生成 UTF8 的 pas ,好像 D7 编译的时候,不加 -j,所以,应该是所有版本都能用的。

UTF8 的 pas 才是真正的多国语言。
可以显示 各种外国语言。

但是 欧洲的 语言,默认都不加 -j 的,所以这样编译的 exe 可能在某些计算机上显示 欧洲的语言是 乱……
作者:wang_80919 时间:2015/3/30 13:06:55
 
主题:让ZEOSDBO支持sqlite的GBK编码
摘要:修改ZPlainSqLiteDriver.pas

procedure TZSQLiteBaseDriver.LoadCodePages;  //Egonhugeist
begin
  { MultiByte }
  AddCodePage('UTF-8', 1, ceUTF8, zCP_UTF8);
  AddCodePage('UTF-16le', 2, ceUTF16, zCP_UTF16, 'UTF-8'); //Setting this will be ignored b……
作者:forjoylee 时间:2015/3/30 11:17:10
 
回复:……= 'utf8';
    try
      FDConn.Connected := true;
    except
      result := false;
    end;
  end
  else
    result := false;
end;

仅供参考,睡觉喽~……
作者:happyhills 时间:2015/3/9 22:07:55
 
回复:……ing UTF8 and UTF16 without conversion
* Automatic creation of arrays and objects
* Easy access mode with implicit operators
* Compact and formatted output modes
* Win32, Win64 and ARM Android support (MacOS and iOS may work)

Usage
-----
Simple ……
作者:hq200306 时间:2015/2/27 22:57:22
 
主题:intraweb 14.0.35发布,安全性进一步加强
摘要:如题。服务器单元ssl安全选项进一步完善,同时修改了XE7UTF8ContentParser固有漏动……New unit IW.Parser.UTF8.pas (contains TIWUTF8ContentParser). This content parser replaces standard TUTF8ContentParser. The TUTF8ContentParser class has a critical bug in Delphi XE7 (not fixed in Update 1……
作者:chec 时间:2014/12/5 14:56:19
 
回复:放入html中仍然不行,目前找到规律是设 charset=GB2312后,手动转utf8编码显示中文,但只能偶数,直接设charset=utf-8不行,晕死
作者:chec 时间:2015/2/9 23:21:32
 
回复:@ghs_79,你是说改web.config这个文件是吧??我这里面用的是UTF8

@wang_80919 公司环境是2007,但是还是不能肯定是这个问题,因为单独跑是没有问题。
作者:a5824 时间:2015/1/29 17:10:24
 
回复:楼主你是 D7 吗?
建议楼主用 XE2 以上版本。
pas 文件用 utf8 保存。
作者:wang_80919 时间:2015/1/29 17:04:29
 
回复:我也纳闷,JSon内的字符串都是UTF8的吧?
楼主可能想表达的是JSon编码前,接受任意编码的字符串。从楼主说的parsefile和saveto两个函数,基本上可以判断楼主是把其它编码格式的字符串和JSon字符串互转。
作者:vclclx 时间:2015/1/6 10:19:33
 
回复:骂人的话我就不说了。

请 楼上的 阳光 说说。
unicode 和 utf8 编码 应该不一样吧。

难道是一样的吗?
反正我觉得,不一样。

请 阳光 科普。
作者:wang_80919 时间:2015/1/6 9:58:12
 
回复:连UNICODE与utf8的关系都搞不清楚,还是继续"与博士相互学习"吧,学好了再出来装.别有事没事就"人工置顶"你的那几个僵尸贴.
作者:qiuyan81 时间:2015/1/6 9:08:44
 
回复:我看 JSON 说明里说。不编码的,明文,就是 UNICODE 。楼上高手又说 \u 是 UNICODE 的。那么 其他编码需要如何表示呢?例如 utf8 和 ansi。.
作者:wang_80919 时间:2015/1/6 8:37:06
 
回复:……fXMLUTF8);

  TReconcileAction = (raSkip, raAbort, raMerge, raCorrect, raCancel, raRefresh);
  TReconcileErrorEvent = procedure(DataSet: TCustomClientDataSet; E: EReconcileError;
    UpdateKind: TUpdateKind; var Action: TReconcileAction) of object;……
作者:dinkysoft 时间:2015/1/1 10:03:54
 
主题:请教关于判断Url中是否包含中文
摘要:在idHttpServer中,XE2的版本对于UTF8编码的中文能识别,但如果是用idHttp直接提交的中文不能识别...
修改
function InternalReadLn(AIOHandler: TIdIOHandler): String;
begin
  Result := AIOHandler.ReadLn(TEncoding.UTF8);
  if AIOHandler.ReadLnTimedout then begin
    raise EIdReadTimeout.Creat……
作者:luckyso999 时间:2014/12/8 10:51:59
 
回复:一点也不乱 UTF8 是国际标准。任何传输都应该是 UTF8 的。
不过 JSON 好像规定,字符串是 UNICODE 的。
其他传输,都没有明确规定。所以 UTF8 就是推荐编码。
作者:wang_80919 时间:2014/12/3 15:27:25
 
回复:我这样处理:
在XE7中使用EncodeString编码汉字
在delphi7中Base64解码,然后再UTF8解码得到正常汉字

@Flying Wang   这个TidUri是那里的函数吗?还是什么?
作者:l_wming 时间:2014/12/3 15:24:06
 
回复:XE7默认的编码汉字编码处理起来还是有点混乱
function EncodeString(const Input: string): string; // XE7 Base64编码

似乎delphi先用base64解码再UTF8转码  得到正常汉字
作者:l_wming 时间:2014/12/3 14:58:08
 
回复:如果你是要 XE7 提供的 TNETENCODING 类,可能是 UTF8 的。
作者:wang_80919 时间:2014/12/3 14:47:47
 
回复:浏览器访问是正常的UTF8编码 
JavaAndroid也能解码
就是delphi XE7不能解码 求解
作者:l_wming 时间:2014/11/11 16:29:54
 
回复:……tes/utf8/string marshalling.
        - Changed kbmMWHashString from a simple xor hash to the better  FNV-1A 32 bit hash.
        - Added portable kbmMWGetApplicationName:string returning the name (typically with path) of the current executable.
     ……
作者:wang_80919 时间:2014/10/30 13:16:58
 
回复:扫描接口传入的是UTF8 还是AnsiString,转码
作者:chscheese 时间:2014/10/25 1:36:50
 
回复:……Set=utf8')
VendorLib = 'libmysql.dll'
Connected = True……
作者:happyhills 时间:2014/9/22 22:03:16
 
回复:TEncoding.xxxx.GetBytes(你的字符串);
xxxx 可以选 UTF8 Unicode 等。
作者:wang_80919 时间:2014/9/16 22:35:26
 
回复:2014-9-11
========
* QString修正了LoadTextA/LoadTextW加载带有BOM头的空的Utf8流时出错的问题
* QJSON修正了从流或文件中加载空白JSON数组和对象时出错的问题(恢弘报告)
* QJSON修改直接将非对象或数组值保存到流中的策略(麦子仲肥报告):
  1、如果JSON结点的名称已经指定,则保存为对象的一个子对象;
  2、如果未指定名称,且类型为未知或为jdtNull,则不保存任何内容
作者:chineseswish 时间:2014/9/11 16:14:30
 
回复:唉, 先前尝试过重新Encoding UTF8也不行,现在强行加了一个UTF8的文件头,竟然正常了, 这些年,用Indy就没顺利过.
作者:myciga 时间:2014/9/8 11:08:30
 
主题:What's New in Delphi and C++Builder XE7
摘要:……ith UTF8, UTF16 or UTF32 encodings.
In file names of iOS apps, the debuggers now support the use of international characters (Unicode, such as hélène and éléments).
For general information, see Debugging Multi-Device Applications.

Binary info.plist……
作者:seven_14 时间:2014/9/2 12:08:07
 
回复:……和字符串UTF8,UTF16或UTF32编码。
在文件名的iOS应用程序,调试器现在支持使用国际字符(Unicode,如海琳和元素)。
一般信息,请参见调试Multi-Device应用程序。

二进制info.plist文件部署

info.plist文件,Mac和iOS应用程序,需要继续生成作为一个XML文件,其中包含密钥和相关的值。

部署,然而,现在的XML文件转换为二进制。info.plist文件的内容信息,查看版本信息。

命令行实用程序为XE7变化

Java2OP……
作者:luwakin 时间:2014/9/3 8:25:22
 
主题:有人用ICS 8吗?遇到关于文件名乱码的难题了
摘要:……(无法用utf8decode等方法解码),

换用其他组件,header里的文件名是正常的utf8编码,可以解码。

请教,这是怎么回事,有解决方法吗?

乱码信息见图片:……
作者:badwood 时间:2014/6/20 19:12:35
 
回复:OverbyteIcsHttpProt 的修改记录注释里有讲,header信息默认直接按iso-8859-1解析。所以对乱码,先按iso-8859-1方式转入,再转成其它代码,而百度的header是UTf-8的,所以就转成UTF8,上面badwood的代码就是实现了这么一个转换功能。
建议可以看这几篇文章:
http://shadowlin.iteye.com/blog/706744
http://stackoverflow.com/questions/4600545/trouble-with-ht……
作者:crystalmoon 时间:2014/8/13 16:12:01
 
回复:……ton_UTF8: TRadioButton;
    Popup1: TPopup;
    Label2: TLabel;
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var……
作者:wang_80919 时间:2014/8/7 14:09:52
 
回复:AES Ansi Unicode UTF8 For XE5 upper中还有一点问题,压缩包中是两张截图
作者:ww66 时间:2014/8/7 11:10:52
 
主题:支持XE6!!!FastReport VCL v5.1发布啦~~~~
摘要:报表制作工具FastReport VCL v5.1正式发布,支持Embarcadero RAD Studio XE6,
功能更新:

支持Embarcadero RAD Studio XE6
新增OnGetCustomData/OnSaveCustomData事件,允许用户在报表模板中保存客户数据
新增OnLoadDetailTemplate event事件
在导出TIFF中新增多重图象机制
为导出在UTDF8为导出CSV过滤器添加新属性使用UTF8编码存储Unicode文本
为新类增加R……
作者:nifef 时间:2014/7/16 9:34:45
 
主题:为什么delphi 程序员能够忍受 Rad studio ?
摘要:1: 无中文 虽然说中国是盗版大国, 但无中文这种意识上已经表明企业文化是狭隘的, 你要知道vs工具多达全球100多种语言呀.

2: 抽风的功能性. 似乎人性化的功能都是国人插件的功劳.

3: 云, svn, 今时今日, 这两功能不弄上, 你还好意思出来混? 

4: 蛋疼的utf8兼容问题.

真的不理解, delphi的程序员难道真的没追求了? 抱着少一人赚一人的心理, 越少人用, 越值钱的心态
作者:tuesdays 时间:2014/6/20 10:35:08
 
回复:客户端发来url时,你转utf8了吗?
作者:bdl1 时间:2014/7/9 8:20:34
 
主题: IdFTPSever 处理上传文件时中文文件名乱码
摘要:开发环境,Delphi7的IdFTPServer类,当客户端往服务器上传带有英文或数字的中文文件时,IdFTPServer触发OnStoreFile时传回的文件名不是完全的UTF8格式,是乱码,例如,上传“三星7月份劳务费.xls”这个文件时,按道理UTF8编码是E4 B8 89 E6 98 9F 37 E6 9C 88 E4 BB BD E5 8A B3  E5 8A A1 E8 B4 B9 2E 78 6C 73,但是OnStoreFile传回的是E4 B8 89 E6 98 9F 37 E6 9C ……
作者:cyradg2008 时间:2014/7/3 8:21:21
 
回复:idftpListPhaseBase.pas第502行

    LI.FileName := TIdTextEncoding.UTF8.GetString(ToBytes(ParseFacts(AItem.Data, LFacts), Indy8BitEncoding));
改为
    LI.FileName := TIdTextEncoding.Default.GetString(ToBytes(ParseFacts(AItem.Data, LFacts), TIdTextEncoding……
作者:tigerbeer 时间:2014/6/28 17:09:15
 
回复:iso-8859-1 转 UTF8

      Astr:=tencoding.GetEncoding(65001).getstring(tencoding.GetEncoding(28591).getbytes(headinfo));
作者:badwood 时间:2014/6/26 23:52:37
 
主题:一个XE5里utf8编码后再解码出现乱码的问题
摘要:字符串 “2013年9月证券从业资格考试” 编码后再解码就出现乱码了,请问是什么原因。

我用Tencoding来处理编码转换,是哪里写错了吗?
因为除了UTF8,还会用该函数处理其他codepage,如日文韩文德文等,所以希望尽量用Tencoding解决。

测试函数如下:
var
  Aencoding:Tencoding;
  astr:RawByteString;
begin

  Aencoding:=Tencoding.GetEncoding(CP_UTF8);
  a……
作者:badwood 时间:2014/6/25 10:48:32
 
回复:参照utf8encode里的代码,将rawbytestring 做如下处理,能正确转为string了

  if rawbytestr <> '' then
  PStrRec(PByte(rawbytestr) - SizeOf(StrRec)).codePage := CP_UTF8;

不知道还有没有其他标准的方法
作者:badwood 时间:2014/6/26 2:18:37
 
回复:
bs:=Tencoding.GetEncoding(CP_UTF8).GetBytes(astr)

获得的tbytes结果是没有问题的,转码正确。

问题就是出在怎么正确将tbytes转为string上。


因为我写的代码,使用的是stringof(等于Tencoding.GetEncoding(936).Getstring)来转tbytes,测试时,发现部分中文字符串会出错。

希望能有一个正确的代码参考一下。
作者:badwood 时间:2014/6/26 0:44:03
 
回复:1、用tencoding.default.getstring 和用TEncoding.GetEncoding(936).GetString是一回事呢。

2、tfilestream不指定codepage,它的bytes,就是tencoding.default.getbytes,你的那个帖子里的OutStr.Bytes实际就是通过tencoding.default.getbytes获得的,等同bytesof


3、star5用的utf8encode,生成的确实是正确编码了,但不是我想要的,我咨询……
作者:badwood 时间:2014/6/26 0:37:45
 
回复:之前以为解决了,但后来仔细研究武稀松的说明,又糊涂了。

 Aencoding:=Tencoding.GetEncoding(CP_UTF8);
 astr:=Aencoding.GetString(Aencoding.GetBytes(memo1.Text)); 

这样不是什么也没做吗,没有将字符串进行转码,还是我没有领会武大的意思?

TO crystalmoon 
我之前用的stingof 和bytesof,它们就是调用 tencoding.default.getstring 和 ……
作者:badwood 时间:2014/6/25 17:11:16
 
回复:to badwood ,其实是一样的,就是多了一个Base64而已,也是把Default的字符串先转成big5,utf8之类的,然后 再Base64,反之,再切回来,看来你还是没有仔细看到底。
作者:crystalmoon 时间:2014/6/25 12:48:59
 
回复:似乎你对Unicode和Delphi的Encoding还有Unicode和RawByteString之类的概念完全是混乱的.
var
  Aencoding:Tencoding;
  astr:RawByteString;
begin

  //好多错误
  //1.StringOf和BytesOf是为了简化用系统默认编解码器编解码用的.你的UTF8不合适
  //2. astr:=Aencoding.GetString这种有问题,因为GetString返回的是UnicodeString,……
作者:wr960204 时间:2014/6/25 12:24:02
 
回复:TO star5 

在XE5里用uft8encode的结果都不对,生成都字符串都没编码,

例如“证券从业资格考试”,UTF8编码后在memo里应该显示为“璇佸埜浠庝笟璧勬牸鑰冭瘯”
作者:badwood 时间:2014/6/25 12:18:33
 
回复:昨天写的只是一个思路,我现在是在我自己的继承类,通过覆盖SocketDataAvailabe进行,并增加了HeaderCharset 字符串类型 属性(比如 UTF8,GB2312之类),然后,如果该属性不对空,则按上面的做,否则,直接按原来的处理,以提高效率。。。如果直接改MoveTBytesToString,还是要动那个单元的,这是不可控的。
作者:crystalmoon 时间:2014/6/25 9:31:25
 
回复:同样的,如果客户端用idhttp获得返回的字符,也需要解码
,需要用到TStringStream
var
  ajson,AItem: TQJSon;
  i, imax: integer;
  S:String;
  cText:TstringStream;
var
  item: TListViewItem;
  lName, lValue: TLabel;
begin
  cText:=TStringStream.Create('', TEncoding.UTF8);
 ……
作者:eastroads 时间:2014/6/17 11:09:40
 
回复:如果要显示汉字,需要用到utf8,输出的时候用UTF8Encode函数即可。
procedure Tfm_Data.RtcDataProvider1DataReceived(Sender: TRtcConnection);
var
  Srv:TRtcDataServer absolute Sender;
  sql:string;
begin
  sql:='网页';
  if Srv.Request.Complete then
      Srv.Write(UTF8Encode(……
作者:eastroads 时间:2014/6/17 11:06:15
 
回复:……ing.UTF8);
    finally
      s.Free;
    end;
  end;
end ;……
作者:haiou327 时间:2014/6/5 23:13:07
 
回复:刚解决了一下这个问题,不知和大家乱码的是否同一个原因,可以参考一下

原因是程序中加载了UAC资源文件,而在编译资源文件时的UAC.manifest默认是UTF8格式保存的,另存成ANSI文件再用brcc32编译成新的uac.res,再在程序里再编译一下就可以了
作者:fangl2010 时间:2014/6/4 14:07:11
 
主题:如何将utf8转化为utf16 (fastReport升级问题)
摘要:请教一下,旧版fastReport中.

frxMemoView是不是采用UTF8 ?(我不确信)

如何将它改为UTF16(新版好像采用这个,--我也不确信)

我想要一个函数,实现UTF8转化为UTF16.

如转化(FastReport报表文件升级)成功,将把源码与大家分享.

我想要一个函数,实现UTF8转化为UTF16.
我想要一个函数,实现UTF8转化为UTF16.

哪位兄台指点一下,万分感谢!
作者:aknightchen 时间:2014/5/17 11:25:11
 
主题:有否 Firebird Embedded + FireDAC 的例子?
摘要:我的 FDconnection1.params

Database='$(RUN)\files\IWT.FDB';
OSAuthent=NO;
SQLDialect=3;
User_Name='SYSDBA';
Password='masterkey';
CharacterSet='UTF8';
DriverID=FB

但得出 error

[FireDAC][Phys][FB]Unable to complete network request to host ……
作者:pp0123 时间:2014/5/14 6:38:56
 
主题:utf8转换的问题求教
摘要:使用的是delphi xe4。编程目的是,从zip文件中将指定文件解压出来,文件名含有中文,调试中发现中文编码使用的是utf8,请问是否有函数可以将文件名转换为unicode编码?另外,在xe4中使用调试发现,某字符在内存中的ascii数值为230,可是使用ord函数获得的ascii值为何结果为何为181?
作者:coolzhl 时间:2014/5/12 22:15:50
 
回复:to 33楼 ander5115 (Ander)
==========
感谢反馈,问题已修正,新版带BOM的UTF-8编码JSON加载比lkJSON快,Ansi编码由于需要转码,要比lkJson稍慢,实际用于解析时间要比lkJson快。

加载内容为一个10MB的QJSON长字符串

Delphi 2007虚拟机测试:

解析速度测试:QJson=80ms,lkJson=120ms
加载速度测试(ANSI):QJson=180ms,lkJson=131ms
加载速度测试(UTF8):Q……
作者:chineseswish 时间:2014/5/9 13:16:55
 
回复:算了,自已进入IdIOHandler.pas中,

增加了个函数:

function TIdIOHandler.kReadLnUTF8:string;
begin
  Result:=ReadLn(IndyTextEncoding_UTF8);  //注意, 我是采用UTF8来处理字符的
  if ReadLnTimedout then
  begin
    raise Exception.Create('IdIOHandler.Realn TimeOut!');
  end;……
作者:aknightchen 时间:2014/5/9 8:38:43
 
回复:至從XE2 升級至 XE6 後 25 樓我自己發的帖,發現無法運作,試了很久後發現要自己送命另才會正常,所以又修了一個版本.
void __fastcall TForm1::btn1Click(TObject *Sender)
{
  bool FFtpServerAllowUTF8 = false;
  IdFTP1->Connect();
  IdFTP1->IOHandler->DefStringEncoding = IndyTextEncoding_OSDefault();
  boo……
作者:etjon 时间:2014/5/7 11:51:37
 
回复:在teechart论坛看到的:
不是UTF8编码、是因为teechart需要兼容delphi7。TeCompile遇见高版本的Delphi,会自动先转换为u编码。
貌似英语就可以、不用西班牙语。
作者:jiucenglou 时间:2014/4/30 15:10:33
 
回复:我们的环境中,中文也是正常显示的。
但是如果他们要看,就是乱码。

不改 UTF8 就是狂妄自大,以为他们就是全世界!
对于兼容,可以用 编译选项。
作者:wang_80919 时间:2014/4/30 11:19:13
 
回复:@wang_80919

问题不在于他们太狂妄自大,而在于在他们自己的环境中(西欧语言)那些字符是可以正常显示的.
保存为UTF8也并非一定能解决问题,还要考虑不支持Unicode的IDE,比如D7之类的兼容性呢.

所以,对这类控件,比如FastReport,TeeChart,LMD之类的,要么自己手动去改.pas源代码的编码,要么就改计算机的区域选项,
作者:kkkmmm 时间:2014/4/30 11:17:56
 
回复:老外写代码 有特殊字符,也不保存成 UTF8 。老外就是太狂妄自大!
作者:wang_80919 时间:2014/4/30 10:59:08
 
回复:可能是utf8和gb2312的问题

下面这个是utf8编码出来的。编码内容是
我会i420琴·#%……430-42琴去访3蛊哦呜帕妃进入噢乖取40u92琴239琴
作者:lght 时间:2014/4/23 17:22:14
 
回复:这个问题我遇到过,程序有个报表功能,如果服务安装在windows上没问题,但是到linux服务器就有问题,原因是:linux上,如果对字符串进行加密解密,默认会按照linux上默认的字符集来进行加密解密,那么传到客户端的数据,就会变成乱码,后续到客户端的数据,进行utf8-〉ansi就可以了。
作者:sbzldlb 时间:2014/4/16 11:53:19
 
回复:不建议使用ansi模式,建议使用utf8

也就是不建议去设置$DEFINE FORCE_ANSI_STRING
作者:star5 时间:2014/3/23 20:46:15
 
回复:确认下wz.txt是不是UTF8的字符,可能需要将字符先转换成ANSI的
作者:pcspace 时间:2014/3/22 12:16:12
 
回复:要先转换成 utf8 的 TBytes  , 再传 TBytes 的指针作为 源。
作者:sczhyq 时间:2014/2/27 17:17:53
 
回复:我的这个代码能正常解UTF8,GB2312的(改一下代码页就可以),可以正常解出“我爱我家”BASE64编码,而且上面的代码也不是所有BIG5编码都解不出,换一个测试的字符串,比如“pGquYaZupKOmbqFDoUOhQw==”就能正常解出为“大家好不好。。。”,就是这一个"p9o/p9quYQ=="解不好,会丢字,所以写了不少天了,最近才发现这个问题。。郁闷的。
作者:crystalmoon 时间:2014/2/25 20:29:00
 
回复:ostream.write(StringToJString(s).getbytes(StringToJString('UTF8')))
作者:wang_80919 时间:2014/2/20 10:44:50
 
回复:服务端,请发送 UTF8 的 XML
作者:wang_80919 时间:2014/2/18 9:25:55
 
回复:xe5也只是unicode,不是utf8,你要进行utf8转码

utf8decode()
作者:star5 时间:2014/2/12 21:51:53
 
主题:XE5下安卓开发技巧
摘要:一、手机快捷方式显示中文名称
    project->options->Version Info-label(改成需要显示的中文名即可),但是需要安装到安卓手机才可以(IOS的没有试过)
二、使用Sqllite存储中文
    SqlLite中,字段类型要设置为nvarchar,保存时,有两种方式
    1)用Post时,对中文的字段要进行UTF8转换
    先用一个string变量转换一下(不转换的话Win32编译没有问题,Android编译时出错)   str_temp:=UTF8EN……
作者:sdhzth 时间:2013/10/17 15:03:13
 
回复:……bat.utf8.txt
就是我们要讨论的重点。


我发现现在的 第三方 SDK 分 3 种。
1. HTTP 类的。webservice rest 等。用  INDY 控件 或 webservice rest 控件即可。
2. NDK SO 类的。大家看看 Androidapi.inc 和 Androidapi.NativeWindowJni 的内容,大家就知道如何调用了。EMB 代码中还有其他 SO 的。简单的说和 调用 DLL 差不多,就是不能 LoadLibrary。要静态定义接……
作者:wang_80919 时间:2014/1/14 10:45:58
 
回复:编码问题,建议传输时用utf8,或强制使用ansi模式。
作者:star5 时间:2014/1/11 9:37:18
 
回复:……MD5_UTF8(S: string): string; overload;
function StrToMD5_UTF8(S: string; ReturnLength: integer): string; overload;
function StrToMD5_Unicode(S: string): string; overload;
function StrToMD5_Unicode(S: string; ReturnLength: integer): string; overload;……
作者:wang_80919 时间:2014/1/10 13:25:33
 
主题:shellexecute 怎么不工作?
摘要:shellexecute(Handle,nil,'cmd.exe',
'/C D:\Mysql\bin\mysqldump -uUserName -pPassword --default-character-set=utf8 cx > d:\1.sql','D:\Mysql\bin',SW_SHOWNORMAL);

为啥生成了一个文件大小为0的sql文件,里头是空地。。。

我的mysql是绿色版的,在D:\mysql 目录下的。数据库就是cx 
我显示了窗口,可是一闪而过,没能……
作者:wukum 时间:2014/1/7 23:28:11
 
回复:shellexecute(Handle, nil, nil,
'cmd /C D:\Mysql\bin\mysqldump -uUserName -pPassword --default-character-set=utf8 cx > d:\1.sql','D:\Mysql\bin',SW_SHOWNORMAL);

这样看看, 如果不行就用createprocess
作者:bahamut8348 时间:2014/1/8 15:03:14
 
回复:如果要通用,请使用 UTF8.
作者:wang_80919 时间:2014/1/3 17:41:51
 
回复:delphi 打开的文件怎么改编码?

我没找到这样的设置,是用其他工具改的UTF8,然后用DELPHI打开 但仍然不行
作者:badwood 时间:2013/12/23 13:36:50
 
回复:如果知道作者的国家,
你可以先切换到他们的国家的语言(需要重启)。
然后用 DELPHI 打开, 文件格式切换到 UTF8 。然后返回中国。
作者:wang_80919 时间:2013/12/23 13:22:38
 
回复:请使用 UNICODE 或 UTF8
作者:wang_80919 时间:2013/12/17 15:03:31
 
回复:…… -> utf8 
语言改回中文重起
重新打开 无错误。

附上原始文件一份。……
作者:hujiacheng 时间:2013/12/9 21:03:18
 
回复:Editplus另存utf8不带BOM的,不好。另外,改语言重编译不好,安装的时候没问题,但每次rebuild的时候,还是有问题的。所以你用ultraedit试试。我改完以后,没有13楼的问题

to  letianxia
已发。
作者:nevergrief 时间:2013/11/19 16:54:39
 
回复:mark
TStringStream.Create('',TEncoding.UTF8);  看到这里 我就忍不住想骂 indy 让我费尽功夫了 这样写编码多好。
作者:msfm 时间:2013/11/19 16:08:25
 
回复:procedure TForm1.FormActivate(Sender: TObject);
  var ss:TStringStream;
      s1:string;
      n1,nn:integer;
begin
  ss:=TStringStream.Create('',TEncoding.UTF8);   //建立时的中文编码为 TEncoding.UTF8
  Idhttp1.Get('http://www.hzqx.com/hzqx/HztqybInfo.xml……
作者:chkdsk001 时间:2013/11/19 15:30:03
 
回复:Delphi IDE无法在中文区域编码下认出这些字符,右键UTF8也不行。你可以用Editplus或者UltraEdit另存UTF8,记得要带BOM,然后就可以编译通过了。

另外,问你要QQ为什么不告诉我?
作者:nevergrief 时间:2013/11/18 8:12:09
 
回复:var
  ss1:string;
  sr :TStringStream;
begin
  sr := TStringStream.Create('',TEncoding.UTF8);
  with sr  do
  try
    IdHTTP1.Get('http://www.hzqx.com/hzqx/HztqybInfo.xml',sr);
    ss1 := sr.DataString;
    ShowMessage(ss1);
  finally
    s……
作者:zhenglee1981 时间:2013/11/15 9:02:58
 
回复:  或者这样:
  ss:=TStringStream.Create('',TEncoding.UTF8);
  IdHTTP1.Get(’http://www.hzqx.com/hzqx/HztqybInfo.xml‘,ss);
  showmessage(ss.DataString);
  ss.Free;
作者:z_y_b_delphi 时间:2013/11/14 20:09:05
 
回复:var
  ss:TStringStream;
begin
  ss:=TStringStream.Create;

  IdHTTP1.Get(‘http://www.hzqx.com/hzqx/HztqybInfo.xml’,ss);
  showmessage(TEncoding.UTF8.GetString(ss.Bytes));
  ss.Free;
end;
作者:z_y_b_delphi 时间:2013/11/14 19:55:35
 
主题:Clever Internet Suite使用环境问题
摘要:……ing.UTF8);
 HtmlParser := TStringList.Create ;

 clHttp.post(BaseURL + '/search.do?method=get',clHttpRequest, post_response);

 HtmlParser.Text := post_response.DataString;

 clHtmlParser.Parse(HtmlParser);
 clHtmlParser.links.AssignList(ListB……
作者:ti9er 时间:2013/10/25 16:21:44
 
回复:可以使用 Google 翻译:
中文: http://translate.google.com.hk/translate?act=url&hl=zh-CN&ie=UTF8&prev=_t&sl=auto&tl=zh-CN&u=http://delphi-z.ru/
英文:http://translate.google.com.hk/translate?hl=zh-CN&sl=ru&tl=en&u=http%3A%2F%2Fdelphi-z.ru%2F&sandbox=1
作者:highflyer 时间:2013/10/29 0:07:05
 
回复:一、手机快捷方式显示中文名称
    project->options->Version Info-label(改成需要显示的中文名即可),但是需要安装到安卓手机才可以(IOS的没有试过)
二、使用Sqllite存储中文
    SqlLite中,字段类型要设置为nvarchar,保存时,有两种方式
    1)用Post时,对中文的字段要进行UTF8转换
    先用一个string变量转换一下(不转换的话Win32编译没有问题,Android编译时出错)   str_temp:=UTF8EN……
作者:sdhzth 时间:2013/10/19 16:32:34
 
回复:下面code是取回上面json,是使用SuperObject 1.2.4 _ xe5,但不知何處有錯,總是有問題?
謝謝

procedure TForm1.Button1Click(Sender: TObject);
var
  soTest:ISuperObject;
  doc : TStringList;
  RespData: TStringStream;
begin
  RespData := TStringStream.Create('', TEncoding.UTF8……
作者:bear28 时间:2013/10/15 13:09:34
 
主题:Xe5 android如何将IdHTTP1.Get回来的xml檔放入XmlDocument1来解析运用?
摘要:procedure TForm1.Button1Click(Sender: TObject);
var
  sXml : string;
  RespData: TStringStream;
begin
  RespData := TStringStream.Create('', TEncoding.UTF8);
  IdHTTP1.Get('http://…/36.xml',RespData);
  sXml := RespData.DataString;

  XmlDocu……
作者:bear28 时间:2013/10/13 4:07:37
 
回复:方法一:
//用內存流
var
  MS: TMemoryStream;
begin
  Ms := TMemoryStream.Create;
  IdHTTP1.Get('XMLURL',MS);
  XMLDocument1.LoadFromStream(MS, TEncoding.UTF8);
  ......
  MS.Free;
end;

方法二:
//直接操作 string
var
  sXML: string;
begin
  sXML := IdH……
作者:sail2000 时间:2013/10/14 8:50:08
 
回复:已部分解決
procedure TForm1.Button1Click(Sender: TObject);
var
  RespData: TStringStream;
begin
  RespData := TStringStream.Create('', TEncoding.UTF8);
  IdHTTP1.Get('http://…/36.xml',RespData);
  RespData.SaveToFile('data.xml');

  XmlDocument1……
作者:bear28 时间:2013/10/13 22:13:37
 
回复:procedure TForm1.Button1Click(Sender: TObject);
var
  sXml : string;
  RespData: TStringStream;
begin
  RespData := TStringStream.Create('', TEncoding.UTF8);
  IdHTTP1.Get('http://…/36.xml',RespData);
  sXml := RespData.DataString;
  
  XmlDo……
作者:sail2000 时间:2013/10/13 15:16:20
 
主题:关于delphiXE5中Indy的Tcpserver的Writeln和Readln函数无法带编码参数,求教!
摘要:关于delphiXE5中Indy的Tcpserver的Writeln和Readln函数无法带编码参数,求教!

以前是在DelphiXe2中写的代码,现在新装了delphiXE5,便把程序移植过来,现在发现TCP的读写函数居然不能带编码参数,如下:

以前正常的代码:

AContext.Connection.IOHandler.WriteLn('信息', TEncoding.UTF8);
AContext.Connection.IOHandler.ReadLn(TEncoding.UT……
作者:nieyv 时间:2013/9/28 19:43:38
 
主题:如何将一段文本保存为无BOM的UTF8格式编码的文本文件
摘要:SaveToFile函数中加TEncoding.UTF8保存的文本文件是有BOM头的,十六进制打开后开头有EF BB BF的BOM头。

请教一下各位高手,有没有直接能保存为无BOM头的UTF8格式文本文件方法?
作者:comeheres 时间:2013/10/1 11:14:17
 
回复:中文内容必须是UTF8编码的,否则就是乱码
作者:xjia 时间:2013/9/24 8:03:29
 
回复:1、手机上用grid显示中文有乱码现象

UTF8 的类型内容不一定就是 UTF8 的。请做好字符编码的转换工作。
作者:wang_80919 时间:2013/9/19 10:01:34
 
回复:http://translate.google.com.hk/translate?hl=zh-CN&ie=UTF8&prev=_t&sl=auto&tl=zh-CN&u=http://blogs.embarcadero.com/davidi/2013/09/13/42863/
作者:yimen 时间:2013/9/18 13:47:37
 
回复:中文说明不会有。看英文的吧。

编程中使用中文应该没问题吧。

大概编码最好用 UTF8 的。
作者:wang_80919 时间:2013/9/12 20:24:59
 
回复:如果不只是英文,请使用 UTF8 字符集。
作者:wang_80919 时间:2013/9/9 16:00:34
 
主题:mtgox.com API问题请教。
摘要:……ing.UTF8);
      Params:=TStringList.Create;
      try
        Params.Values['Currency']:='CNY';
        Params.Values['nonce']:=GetInt64TimeStamp(now);  //unix_time

        IdHTTP1.Request.CustomHeaders.AddValue('Rest-Key',MtGoxAPIKey);……
作者:newhzlan 时间:2013/8/27 16:35:33
 
回复:第一个是 MD5 的输出。

你找个 MD5 单元就可以了。

用 INDY 也行。

type
  TMD5 = class(TIdHashMessageDigest5);

function StrToMD5_UTF8(S: string): string;
var
  Md5Encode: TMD5;
begin
  Md5Encode:= TMD5.Create;
  try
    Result := Md5Encode.HashStringAsHex(S, TEn……
作者:wang_80919 时间:2013/8/22 9:32:17
 
主题:Mysql 插入数据乱码
摘要:数据里面有韩文,插入数据的sql语句再delphi里面是正常的
使用delphi提交的插入语句,插入后是问号,
用phpMyAdmin执行同样的sql语句,能正确插入


mysql相关设置:
数据库是utf8的编码的
          
| character_set_client     | gbk          
| character_set_connection | gbk          
| character_set_database   | gbk      ……
作者:wangweic 时间:2013/8/11 3:45:00
 
回复:set names utf8 没有用,很早就试过了

procedure TForm1.FormCreate(Sender: TObject);
begin
  try
    con1.ConnectionString := 'DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=ylg_data;USER=root;PASSWORD=root;OPTION=3;charset=utf8';
    con1.Connecte……
作者:wangweic 时间:2013/8/21 3:34:50
 
回复:一般都是utf8格式的,这个带不带会影响读文件吗?
一开始用的是stringlist.loadfromfile,不过文件大小上来的时候就不行了
作者:wangweic 时间:2013/8/20 11:36:04
 
回复:conn.ExecSql(set names utf8;);
作者:wang_80919 时间:2013/8/20 9:26:34
 
回复:谢谢 ,还是一样,自动创建一个表,其中中文注释都变成乱码了

表指定了 DEFAULT CHARSET=utf8

再插入前还手动设置了编码
with db.qry_temp do
  begin
    close;
    sql.Text := 'set names utf8;';
    ExecSQL;
  end;

sql也使用了 sql.Text := UTF8Encode(sqlstr);

数据库的字符集也是utf8

还是乱码
作者:wangweic 时间:2013/8/11 13:23:09
 
回复:sql.text := utf8encode(yousqltext);
意思就是转成 UTF8 文本。
作者:wang_80919 时间:2013/8/11 8:47:54
 
回复:唉,楼主,你这个文件是UTF8的格式,你用
  Memo1.Lines.LoadFromFile('D:\Temp\wangweic_201389125418.txt', TEncoding.UTF8);
就可以了(和楼上类似),晕,我还以为是用韩文本地编码的呢。
刚刚用UltraEdit看了下,这个文件是带BOM头的,所以用
  Memo1.Lines.LoadFromFile('wangweic_201389125418.txt');
也应该可以的。
对了,我还特意开发虚拟机用XE……
作者:iamdream 时间:2013/8/9 13:52:47
 
回复:我在delphi2010下载入繁体(Big5)编码文件(非Unicode/UTF8字符集文本)可以用以下代码:
  Memo1.Lines.LoadFromFile('D:\temp\繁体网页_2.htm', TEncoding.GetEncoding(950));
你可以用这个方法试试,只要将950换成韩文的代码页(Code Page=949)应该就可以了。如果还不行,就设一下Memo.Font.Charset,将它设成HANGEUL_CHARSET/JOHAB_CHARSET试一下。
作者:iamdream 时间:2013/8/9 10:51:43
 
回复:……ing(UTF8ToString(Param.GetAnsiStringGoods('Type')));
   flduserid:=AnsiString(UTF8ToString(Param.GetAnsiStringGoods('UserId')));
   fldusername:=AnsiString(UTF8ToString(Param.GetAnsiStringGoods('UserName')));
   flduserpassword:=Param.GetAnsiSt……
作者:jopher3 时间:2013/7/3 19:23:38
 
回复:這個問題我研究了3天,原因是不的 ftp Server 預設的可能不同,像 IIS 7.0 預設的 ftp 和 IIS 7.5 預設的 FTP 字元編碼中有個選項,叫 UTF8 什麼的設定,傳回的結果即不同,因寫的客戶端可能會連結不同的 ftp Server ,所以不可能寫死,我有試過如果用預設的編碼還是會不正確,正確的解決方式如下:
連線成功後,透過 FEAT 詢問 ftp server 是否支援 UTF8,再設定編碼的類型,我改成這樣後不管  ftp server 如何設有沒有支援 UTF8,都很正……
作者:etjon 时间:2013/6/25 21:11:11
 
主题:求助,关于MyODBC和UTF8的问题
摘要:数据库查询出的UTF8数据,偶数字数的UTF8Decode都没问题
奇数的都有问题

用 BytesOf(UTF8Encode('意大利'))出来的是:
230 132 143 229 164 167 229 136 169
而数据库查询的 AsBytes是
230 132 143 229 164 167 229 136 63
位数错了
这是什么回事?

尝试用了D2007 D2012 都一个结果
我使用的是MyODBC 3.51 和 MyODBC 5.11 都不行
尝试过使用……
作者:listenyx 时间:2013/3/1 11:36:09
 
回复:最终问题解决了,但是解决的方法十分蛋疼。
使用PHP作为中转API接口,去获取数据和写入数据。
因为还有text问题,使用odbc读写text类型utf8字符时问题很多。
作者:listenyx 时间:2013/6/24 17:46:23
 
回复:function TForm4.CreateMd5(requestStr:String):string;
var
  resultStr: string;
  MD5: TIdHashMessageDigest5;
begin
  MD5 := TIdHashMessageDigest5.Create;
  Result := MD5.HashStringAsHex(requestStr,IndyTextEncoding_UTF8);
  MD5.Free;
end;

delphi自……
作者:myenet 时间:2013/6/10 11:06:38
 
主题:unidac 又有最新版了5.0.1
摘要:……for UTF8 databases in the Direct mode is fixed 
Bug with application hang on get NVarchar column through link to MS SQL Server in the Direct mode is fixed 
Bug with inserting NVARCHAR data for UTF8 databases and Oracle 10 or below if INSERT statement ……
作者:qingyun 时间:2013/5/17 10:12:11
 
回复:XE4 使用宽字符,D7用ansi编码,
按照问题描述应该是发送方使用了UTF8之类的双字节字符编码.
你可以试下把接收到的内容用UFT8ToAnsi转换一下.
作者:qiuyan81 时间:2013/5/16 9:28:35
 
主题:delphi xe2 利用 dbexpress 连接 mysql 问题
摘要:……Set=utf8');
     SQLConnection.Params.Add('ConnectTimeout=60');
     SQLConnection.Connected := True;
     SQLQuery.SQLConnection := SQLConnection;
     SQLQuery.SQL.Text := 'select * from city';
     SQLQuery.Open;
     ShowMessage(IntToStr(……
作者:andreabocelli 时间:2013/3/10 21:42:52
 
回复:……Set=utf8');
    SQLConnection.Params.Add('ConnectTimeout=60');
    SQLConnection.Connected := True;
    SQLQuery.SQLConnection := SQLConnection;
    SQLQuery.SQL.Text := 'select * from user;';
    SQLQuery.Open;
    ShowMessage(IntToStr(SQLQu……
作者:andreabocelli 时间:2013/3/11 12:34:58
 
回复:这个我以前也出现过,不过是中文,数字没问题,当时在linnux服务器,查出来的数据发现最后有一位特殊字符,转码后,特殊字符没有了,但是最后一位少字符了,我当时的做法是:在查询出来的字符后面,加上几个英文字符,不过英文字符要先转码成utf8,然后进行拼接,解码后,删除最后几个添加的字符
作者:sbzldlb 时间:2013/3/2 9:01:37
 
回复:完全Unicode化;
lazarus完全UTF8都多少年了。

完全的x64编译(Delphi和C++Builder都支持);
多少年前lazarus就多平台了,当然包括x64。

完全支持泛型;
如果泛型确实好,lazarus也会支持的。

集成了FastMM;
如果lazarus的内存管理不如FastMM,肯定会吸收的,报内存泄漏也是早就实现了。同一个程序,用了FastMM的Turbo Delphi,与lazarus程序的效率基本是一样的。

集成了PNGImage;
多少……
作者:yzqyb 时间:2013/2/20 16:49:14
 
回复:暂时找不到什么好办法,还是将读取文件到十六进制文本时,不加入空格好了,再把UTF8编码和解码的函数稍微修改下。

谢谢楼上的几位,如果谁有好的方法,不妨贡献出来啊~~
作者:comeheres 时间:2013/1/22 0:06:14
 
回复:2005就可以了吧?看单元文件能不能存成utf8
D2007测试通过:
var
  蛋疼: Integer;
begin
  蛋疼 := 0;
  ShowMessage(IntToStr(蛋疼));
end;
作者:vclclx 时间:2012/12/12 0:01:29
 
主题:DevArt UniDac v.4.5.10 (07-Nov-12) FS
摘要:……for UTF8 databases is fixed
Bug with parameter length loaded from DFM is fixed
Bug with LargeInt calculated fields is fixed
Bug with refresh cursor with AutoClose=True is fixed
Bug with LOB fields for Oracle 8.0.5 is fixed

SQLServer data provider……
作者:fumin081 时间:2012/11/29 9:40:47
 
主题:UniDAC 4.5.10
摘要:……for UTF8 databases is fixed
Bug with parameter length loaded from DFM is fixed
Bug with LargeInt calculated fields is fixed
Bug with refresh cursor with AutoClose=True is fixed
Bug with LOB fields for Oracle 8.0.5 is fixed
SQLServer data provider
……
作者:fffddd 时间:2012/11/7 23:15:09
 
回复:GB2312,UTF8,GBK 都试了下 貌似 还是乱码!
作者:wanl_delphi 时间:2012/11/14 9:30:30
 
回复:在 data explorer 中 选中某一个链接,点击右键 选 modify connection ,然后点这个界面中的 Advance 按钮,进入之后,就看到 ServerCharset 属性,你最开始找不到是因为,默认值为空,你在ServerCharset后面填 GB2312 或 utf8 或 GBK 等就可。
作者:delphiilove 时间:2012/11/13 16:03:32
 
主题: Web报表工具Finereport常见问题挤解决方案
摘要:……编码改成utf8或者gbk。这里要注意下的是,数据库有服务器编码,客户端编码,具体的某一个数据库和具体的表也有编码,只有在建数据库建表的时候选对了编码才行(没选的话就用的默认的)。

repeated column width is larger than paper width:
这个看这段话应该是很好理解的。比如做的模板页面宽度只能放开5列,结果给6列做了重复和冻结,这个逻辑上肯定是说不过去的。

模板打不开,拒绝访问:
可能是win7操作系统对文件有权限。

安装设计器后无法预览……
作者:report 时间:2012/9/23 20:27:57
 
回复:……ing.UTF8);
    idHttp:= TIdHTTP.Create(nil);
    idhttp.AllowCookies := false;
    idhttp.HandleRedirects := false ;
    idHttp.Request.ContentType := 'application/x-www-form-urlencoded';
//    idHttp.Request.UserAgent:='Mozilla/4.0 (compatible;……
作者:adong_71 时间:2012/9/12 22:20:31
 
回复:var
  IdFTP: TIdFTP;
begin
  IdFTP := TIdFTP.Create(Self);
  try
    IdFTP.Host := '221.234.43.173';
    IdFTP.Port := 6666;
    IdFTP.Username := 'egmis';
    IdFTP.Password := 'egmis';

    IdFTP.Connect;          // Default, UTF7, UTF8,……
作者:andreabocelli 时间:2012/9/4 11:06:10
 
主题:ZEOSDBO连接sqlite中文路径问题,请各位帮忙看看
摘要:怎样转换为UTF8格式的字符串
我使用的是delphi2010,ZEOSDBO-7.0.0-alpha 和sqlite3.74。在使用的时候有个问题就是中文路径的问题。
我跟踪了一下代码其中几个地方
 
str1是带中文路径的库的全路径 d:\temp\数据库测试\测试数据库.db
con1.Database := str1; 
 
这是ZEOSDBO中的代码,database就是上面的中文路径
FHandle := FPlainDriver.Open(PAnsiChar(Utf8Stri……
作者:leatarget 时间:2011/1/2 15:07:13
 
回复:T*Provider.pas等程式中的中文註解說明可否存成unicode utf8 內碼,
否則在台灣的繁體中文系統無法正確顯示.謝謝!
作者:t27 时间:2012/8/14 9:32:47
 
回复:JAVA的编码是UTF8,D7的是ANSISTRING
作者:xjia 时间:2012/8/13 19:06:19
 
主题:用idhttp提交文件到asp上的问题
摘要:……ing.UTF8);

        ms.AddFile('file1',f,'');
        FDk_dj.idhttp1.Request.ContentType :='multipart/form-data' ;
        h.Post('http://127.0.0.1:1061/put.asp?menu=up',ms,strStream);
          res:=strStream.DataString;

        if res=……
作者:21968578 时间:2012/7/21 1:36:04
 
主题:Delphi2010 开发unicode多语言程序,存取乱码,数据库为Oracle11G
摘要:操作系统:Win2003 简体中文环境
数据库:ORacle 11G, 字符集为AL32UTF8,应用程序Oracle客户端字符集也设为AL32UTF8
开发工具:Delphi2010
状况描述:

(1)使用ADOQuery 查询通过 ORacle SQL Developer插入的泰文,显示为乱码。插入泰文时,存入数据库的为问号,因为Oracle客户端和服务器字符集一致,所以在存储时,两边的字符集未做转换,显示为问号,可能是操作系统不识别泰文,在编辑框中输入泰文是没有问题的,这一块不清楚是如何……
作者:lixingyan 时间:2012/4/20 9:29:13
 
回复:Lazarus界面默认是UTF8编码
作者:soarowl 时间:2012/7/16 23:05:33
 
主题:DevArt UniDAC v.4.2.7 (21-Jun-2012) FS
摘要:……the UTF8 charset is fixed
Bug with auto-generated queries for tables with case-sensitive fields in the Direct mode is fixed
Bug with Connection Mode set for a connection that is established from UniScript is fixed
Bug with statements count when a scr……
作者:tpcnyou 时间:2012/7/3 11:20:28
 
主题:delphi XE2 indy10.5.8  IdHTTPServer 中文乱码...求助
摘要:……ing.UTF8;
  ARequestInfo.CharSet := 'UTF-8';
  sText := getnow + '' + '' + AContext.Connection.Socket.Binding.PeerIP + ':' +
    Inttostr(AContext.Connection.Socket.Binding.PeerPort) + '  ' + '' +
    ARequestInfo.Document + ',parms=' ……
作者:jxydhzw 时间:2012/5/24 16:26:35
 
回复:服务器字符集 设置为 utf8
作者:delphiilove 时间:2012/5/14 17:54:05
 
回复:数据库返回的字符串应该会被转换成操作系统默认的字符集,windows下就是GB2312,然后再在网页编码为非ANSI的页面上显示的话就会乱码,数据库返回的是ANSI即在中文windows中,可以认为是GB2312的或GBK码,而网页上是UTF8的话就不能正确显示了,像RADPHP中设置,应该是editor optinon 中的默认方式使用ANSI应当是可以正常显示的,但是现在好像有BUG,只有选UTF8中文才正常(PHP也需要选UTF8)这就导致了数据库返回编码和页面编码的不一致,所以怎么弄都是有乱码的,……
作者:wuyizhao 时间:2012/5/6 20:23:25
 
回复:你的第二个问题:delphi2010编写出来的程序,一定是unicode程序,不用加任何语句。但是注意源代码文件要用utf8存储,否则会丢失字符(特别是经过别人修改之后),如果是这样那unicode程序也只能显示???了。

你把你含有泰文的delphi2010程序发给我,oracle的表结构也发给我,我把它转成mysql试试,这样也许也可以帮你找出delphi程序的错误。

nevergrief@hotmail.com
作者:nevergrief 时间:2012/4/30 17:53:51
 
回复:数据库试试用UTF8编码
作者:cgc837 时间:2012/4/26 17:31:49
 
主题:如何解决sqlite3的中文乱码问题???
摘要:最近,想学习下sqlite3数据库,用delphi2010+unidac3,连接后,在数据控件(dbgrid,dbedit等)里显示出来的中文都是乱吗,想了好多办法,也上网查过,试过在数据字段的gettext事件里写utf8tostring(还用utf8的编解码的函数)等,都不行。在连接里将unicode设置为false或true都不行。
试用过asqlite控件,也不行。

请各位知道的朋友帮忙??
作者:tuao 时间:2010/8/10 9:19:34
 
回复:存储中文的时候,确实是存储的utf8编码,但存储泰文时,存储的是问号“?”,也就是说无法识别泰文,但我系统里已经安装了泰文字库,界面上的edit编辑框可以正常输入,另外我从数据库中,出入utf8编码的泰文,通过uniquery查询时,如果不设查询条件,查询所有的数据是可以查询到泰文记录,但设置查询条件,则无法查询到,这时,使用parambyname的方式,却可以查询到泰文记录,

另外我有个疑问的地方时,delphi2010怎么编写才是unicode程序,vc好像是增加一条语句就可以了,delphi2……
作者:lixingyan 时间:2012/4/26 12:00:07
 
回复:补充解释第一点:ansi编辑器把中文字符的编码按照ansi解析了,然而数据库接口是utf8吧,就把这个解析后的ansi按照utf8自动转换并存储了。这样的编码从编辑器一开始就是错的,以这个为基础,后面无论怎么转换都没用,自然不能得到正确的unicode编码。

比如“汉”的ANSI编码和utf8编码完全不是同一个东西。但是把“汉”的编码的两个byte分别按照utf8存储,其实还是ansi编码。

但这点仅是我的猜测,没时间仔细验证。但我的确使用这个思路解决了问题。
作者:nevergrief 时间:2012/4/25 18:05:40
 
回复:你具体的情况怎么解决不清楚,但是我给你一些经验也许可以帮你启发思路。

1. 输入SQL的“编辑器”很有讲究。
我前一阵也碰到了问题,数据库连接、存储都是utf8,无论怎么设置读出来的数据就是错误的。后来发现,虽然数据库里是utf8,但用delphi的ansi编码反而能把它正确的读出来。发现这点后就很好解释了。我是使用5年前的mysql cc控制中心输入的sql语句,其中包含了中文字符串。我估计mysql cc只能按照ansi来解析字符、并插入,因此怎么样都是错的。重新用支持unicode的编辑器输……
作者:nevergrief 时间:2012/4/25 18:00:00
 
回复:怎么写sql语句无所谓,关键是数据库存储编码、连接编码必须是utf8,此外uniConnection必须写清楚使用utf8,UseUnicode=true
作者:nevergrief 时间:2012/4/25 15:34:58
 
回复:恩恩,感谢xxhadsg,换成uniDac,将useunicode属性设为true,就可以正常的获取数据了,但存储的时候还是乱码,后将存储语句修改为param参数方式,可以正常存入utf8字符,其他的还在研究。
作者:lixingyan 时间:2012/4/23 17:52:30
 
回复:试试看是否是utf8
作者:melice 时间:2012/4/20 15:36:18
 
回复:我测试了一下,添加下面这句就正常了
mysql_set_charset("utf8");
作者:qhdyanjie 时间:2012/3/20 20:36:41
 
回复:“联通”两个字刚好撞上了utf8的DOM
作者:dotindeed 时间:2012/3/14 13:08:49
 
主题:学习小得: TWinHTTP组件 关于 URL参数用UTF8编码时 存在的问题
摘要:如果 一个服务端 要求 URL 参数值用 UTF8编码,那么 将 参数值编码后,用
TWinHTTP组件发请求时,不会返回正确的信息。因为TWinHTTP组件内部代码,与UTF8编码存在冲突。

  with WinHTTP1 do
  begin
    url := 'http://www.2ccc.com/test/?name=%xx';%xx表格utf8编码的参数值
    Read()
  end;

运行到

procedure TCustomWinHTTP.Thre……
作者:xlonger 时间:2012/3/3 21:32:53
 
主题:关于XE2版本与老版本的程序兼容问题提醒大家注意
摘要:……空皂白的UTF8ToString,而实际上以前版本的CDS文件都是用未UTF8编码的AnsiString格式保存的,这样处理后字段全部出现乱码了,反过来XE2生成的CDS文件,低端版本也无法读取。

以上发现与大家共享,希望对大家有帮助。……
作者:gz_runwe 时间:2012/1/30 12:09:27
 
回复:UTF8
作者:kkyy 时间:2011/12/19 18:50:06
 
主题:关于pojie文件,中文支持(普通界面和数据库读取中文显示),视频教程,对新手很有用,看看吧!
摘要:对于破解文件,论坛有,我就不发了
中文支持,论坛只说了普通界面支持,什么设置utf8的,我也不说了
重点说如何查询数据库读取数据时,中文的支持

此是转http://www.hellophp.net网站的,此网站全是radphp的中文视频教程,大家觉得有帮助就看看吧

1.

Tools—->Options—–>textencoding ———>UTF-8;Character set—–>gb2312

2.

Tools——->Options——>PHP——–>Defaulr—–……
作者:fc6666 时间:2011/11/1 1:54:22
 
主题:配合三层数据库系统设计的应用程序框架系统源码
摘要:配合三层数据库系统设计的应用程序框架系统源码,此框架可以根据服务器设置自动安装各种功能所需的文件,并根据服务器自动升级。
示例使用说明:
一、安装PostgreSQL9.0数据库。并建立两个数据库framework及service_outsource,将DB目录中相应文件恢复到数据库(数据库使用UTF8编码)。
二、将外包功能文件中的四个文件复制到我以前发布的三层数据库服务器的FunFile目录中。
三、执行应用程序框架中的EXE文件。应用地址为:so://服务器地址:服务器端口,如服务器端口设置……
作者:chshj2000 时间:2011/11/2 9:28:50
 
回复:Delphi 是XE,SQL Server 2008
SQL SERVER声明Varchar or NVarchar,与参数为PWideChar、PANSIChar均试过,基TEnCoding的值ASCII、UTF7、UTF8、UNICODE每种组合均试过<若无遗漏的话>

而且,我传的varchar or NVarchar 的值均是英文字符,如 aaaaaaa 而已

快晕倒了。。
作者:luckyrandom 时间:2011/11/2 14:18:05
 
回复:你要确认传过来的是什么编码,你把传过来的数据转成十六进制再看看,比如传“中”字,GBK码为D0D6,Unicode为4E2D,UTF8为ADB8E4等等(我估计它是Unicode或UTF8),知道它的编码方式后就简单了,如果你是用D2009以前的delphi,把它转成ansic就行了,如果是D2009后转成UnitCode,再和你的发数内容拼接成串发送就行了
作者:wzwcn 时间:2011/11/2 12:20:15
 
回复:规律:常量部分OK,正确。。但参数部分就会显示为"????" or "/ ? / ?" 之类的
看起来是解码问题,但试过TEnCoding.Default/ASCII/UTF7/UTF8/UNICODE。。。均没有正确结果
Send声明:Send(Const AData:String;[AEnCoding:TEnCoding=nil])
作者:luckyrandom 时间:2011/11/2 10:01:44
 
回复:……TF7/UTF8/DEFAULT,其结果均为"????",参数传入长短均如此。汗……
作者:luckyrandom 时间:2011/11/2 9:06:40
 
回复:xp,卸载原xe,用安装32位版本,vcl for web 没有了,只有intraweb,空白运行说找不到 forms.dcu,试用汉字还是不支持,默认引用utf8**.pas了,为什么?
作者:chec 时间:2011/10/26 12:24:37
 
回复:TO 20楼:

方法一:
第一:将Source目录内的frxRes.pas 修改:
procedure TfrxResources.AddXML(const Str: AnsiString);
var
Stream: TStringStream;
begin
Stream := TStringStream.Create(UTF8Encode(String(str)));
LoadFromStream(Stream);
Stream.Free;
end;
第二:将\Res\Chin……
作者:tangsk 时间:2011/10/25 11:25:36
 
回复:回6楼

方法一:
第一:将Source目录内的frxRes.pas 修改:
procedure TfrxResources.AddXML(const Str: AnsiString);
var
Stream: TStringStream;
begin
Stream := TStringStream.Create(UTF8Encode(String(str)));
LoadFromStream(Stream);
Stream.Free;
end;
第二:将\Res\Chinese目……
作者:mochizuki 时间:2011/10/23 15:12:35
 
回复:没试过RadPHP。但我用unigui开发过unicode的Web程序,目前还没有发现问题。我分析了一下delphi开发的unicode的web程序的编码要过好几道关,必须都正确才行:

OS->浏览器->Delphi IDE->web程序->数据库

其它比较好办,最需要注意的是数据库编码,它自己在读出数据之后就会根据不同的配置自动进行编码转换,换句话说,又分为存储编码和读出之后的编码。不过我用的是mysql,相信mssql也应该类似吧。另外,我觉得你这样IDE也容易产生问题,建议全部设置成UT……
作者:nevergrief 时间:2011/10/23 12:37:46
 
回复:……312/utf8 编码的编辑器修改这些文件,否则文件中的中文可能变乱码)

搜索: LogPixels
找到的行应该是:[System\\CurrentControlSet\\Hardware Profiles\\Current\\Software\\Fonts]
将其中的:
"LogPixels"=dword:00000060

改为:
"LogPixels"=dword:00000070

搜索: FontSubstitutes
找到的行应该是:[Software\\Micr……
作者:dalas 时间:2011/10/18 19:25:56
 
回复:装linux的时候不要将它设置为UTF8即可。
作者:yzqyb 时间:2011/10/6 13:01:14
 
回复:使用DBGrid,如果数据库的编码不是UTF8的话,显示肯定乱码
我现在都是用ListView来代替DBGrid,显示的时候,读出来的中文做一个转换:iconv("gb2312","utf-8",string)
作者:ganlnyn2008 时间:2011/9/30 12:06:01
 
回复:文件编码:也就是文件保存的格式,比如Ansi、UTF8、Unicode

网页编码:<meta http-equiv="Content-Type" content="text/html; charset=这里就是网页编码" />

数据库编码:这个就不用解释了

这三者要保持一致
作者:iny 时间:2011/9/16 17:19:55
 
回复:INTRAWEB没使用过,做网页的话,要保证不出现乱码,有一个规则是必须遵循的:

文件编码 = 网页编码 = 数据库编码

文件编码:也就是文件保存的格式,比如Ansi、UTF8、Unicode

网页编码:<meta http-equiv="Content-Type" content="text/html; charset=这里就是网页编码" />

数据库编码:这个就不用解释了
作者:iny 时间:2011/9/16 8:06:28
 
回复:先确定 的页面是什么编码 ?一般是 UTF8  但是 在 中文环境下 开放  string 默认是 GBK 编码 你可以调整浏览器编码到GBK 应该能看到 结果
也就是说。。里面放的值。。必须是 页面等同的编码 否则 你 UTF 8 页面放 GBK 就会乱~
作者:hujiacheng 时间:2011/9/15 16:29:37
 
主题:关于delphi XE  ISAPI 的疑问
摘要:在开发WEB的时候发现 Response.Content 默认编码是GB18030 是系统环境导致默认设置是GB18030  吗? 如何改成UTF8 呢?
目前用了个苯办法
function StrToHex(str: string; AEncoding: TEncoding): string;
var
  ss: TStringStream;
  i: Integer;
begin
  Result := '';
  ss := TStringStream.Create(str, A……
作者:hujiacheng 时间:2011/9/5 16:48:33
 
回复:不改 原有单元 直接使用
function StrToHex(str: string; AEncoding: TEncoding): string;

StrToHex(Response.Content,TEncoding.UTF8);
这样。。目前就这样的。[img]http://bbs.2ccc.com/faces/69.gif[/img]
这样的话 每次 来访问先处理然后给数据。。看样子还是得改单元来实现?。
作者:hujiacheng 时间:2011/9/5 17:35:18
 
回复:……里面有些utf8字符,而Delphi默认的用cp936的文件格式打开,导致的错误。正确的应该是

function TSynCustomHighlighter.IsWordBreakChar(AChar: WideChar): Boolean;
begin
  case AChar of
    #0..#32, '.', ',', ';', ':', '"', '''', '′', '`', '°', '^', '!', '?', '&……
作者:nevergrief 时间:2011/8/29 0:45:16
 
回复:需要从unicode string中转一下吧。先变成unicode 的,然后再变成utf8的。
不仅仅是windows,各种unix,包括linux,solaris等,在处理不同的locale的时候大都是通过unicode中转一下的。直接转化的话,系统本身需要提供N*(N-1)/2种不同的转化表格, N为系统中不同locale的个数;通过unicode做中转,就只需要n-1种表格。
大致的代码如下,随手写的,没调试过。
function my_ansiToUtf8(const s: AnsiStri……
作者:gregma 时间:2011/8/15 17:13:49
 
主题:求助ansitoUTF8的问题
摘要:我在delphi 2007中使用 ansitoUTF8 能得到utf8 编码
而在delphi xe 中使用ansitoUTF8 得不到utf8编码
请问各位如何解决?
作者:myso 时间:2011/8/13 7:26:35
 
回复:昨天我也在找转换的函数,找到两个C写的,打包到dll中,用起来速度还挺快的。
//GBK编码转换到UTF8编码
int GBKToUTF8(unsigned char * lpGBKStr,unsigned char * lpUTF8Str,int nUTF8StrLen)
{
     wchar_t * lpUnicodeStr = NULL;
    int nRetLen = 0;

    if(!lpGBKStr)  //如果GBK字符串为NULL则出错退出
        r……
作者:fausten 时间:2011/8/13 13:42:30
 
回复:……t='utf8')
    cursor = connection.cursor()
    cursor.execute("set NAMES utf8")
    cursorin = connection.cursor()
    if (cursor):
        print "数据库连接成功..."
    else:
        print "数据库连接失败..."
        sys.exit()
        
    #默认股票代码为上证指数:……
作者:newstar20088 时间:2011/8/1 18:22:59
 
回复:有中文必须用 UTF8来保持

cds.SaveToFile('tintin.xml',dfXMLUTF8);
作者:tintin1943 时间:2011/6/18 0:14:06
 
回复:你完全可以使用 TStirngStream流,用UTF8编码方式(D2009后续版本),,然后拷贝给TIdMultiPartFormDataStream,,,或者先对中文 base64编码,,,方法很多,,,关键是怎么变通
作者:tintin1943 时间:2011/5/22 0:49:45
 
回复:我晕,网站自动给我解析utf8字符了






作者:gaoxiulan 时间:2011/5/11 19:46:56
 
回复: responseText 在内部强制使用了UTF8编码做了一次转换,盒子正好是 gb2312编码, 所以出错, 你可以看看凤凰网 http://www.ifeng.com/  , 用的 UTF8 编码, 你的这段程序就没问题   

你要做的是转换一次编码
作者:redniuniu 时间:2011/4/16 3:52:32
 
回复:unicode是包括了所有语言的,亚洲,欧洲的都在里面。英语,法语,中文都是的

delphi 7的问题是,这个版本的编译器对unicode的字符串常量支持不好
它不能知道字符串常量 'a中国' 是3个字符。

delphi 2009以后就没这个问题了。(这个是需要编译器支持的,对特定编码(utf8,ansi-C, utf16)的pas源代码中的字符进行分析和判断)

当然,一旦你把unicode字符常量放到unicode类型的string里面去,delphi7和delphi最新的版本一……
作者:gregma 时间:2011/4/14 13:14:30
 
主题:delphi2010通过dbexpress访问oracle9时,中文乱码
摘要:delphi2010通过dbexpress访问oracle9时,dbgridEH标题显示中文都是?? ,并且什么也查询不出,而用delphi7编译时完全正常。网上查了一下应该是2010采用utf8的问题,但不知道连接数据库时在哪里设置编码,请高手指教。
作者:highor 时间:2011/3/30 11:05:51
 
回复:AContext.Connection.IOHandler.WriteLn(string,TEncoding.UTF8)
作者:poperzzf 时间:2011/3/26 16:20:14
 
回复:SynEdit.pas和SynEditSearch.pas中有乱码的问题,看到解决方法了:

其实,就是因为这些里面有些utf8字符,而Delphi默认的用cp936的文件格式打开,导致的错误。正确的应该是

function TSynCustomHighlighter.IsWordBreakChar(AChar: WideChar): Boolean;
begin
  case AChar of
    #0..#32, '.', ',', ';', ':', '"',……
作者:dlp 时间:2011/3/26 9:27:08
 
回复:可能是utf8编码问题,服务器端可能要处理utf8路径。
作者:sevencat 时间:2011/3/9 12:34:31
 
主题:NativeXml 3.25 NativeRegXML and NativeRegIniXML
摘要:……lly utf8, so
the writer also uses utf8 (and added Test14 to check)
* Added speed comparison between old TNativeXml and new TNativeXml: new 
TNativeXml is ca 3 times faster than old.
+ TNativeXmlObjectStorage: Added storage of TCollectionItem and rem……
作者:dk2000 时间:2011/3/8 2:46:17
 
回复:……
  TUTF8Encoding.Create in SysUtils was changed to set the
  MB_ERR_INVALID_CHARS flag:

         original: inherited Create(CP_UTF8);
    with Update 3: inherited Create(CP_UTF8, MB_ERR_INVALID_CHARS, 0);

  It appears that when used with CP_UTF8……
作者:yayongm 时间:2011/3/1 11:27:38
 
主题:UTF8编码格式保存文件
摘要:请问如何以UTF8编码格式保存文件,比如字符串为'中国人',以UTF8编码的方式写入到文件a.txt中,我在网上找了半天,发现都不一样,不知道怎么回事??
作者:kingzgh 时间:2011/2/16 16:43:00
 
回复:先转码成utf8再写到txt文件中去
作者:baifafa 时间:2011/2/16 23:22:01
 
回复:什么叫“以UTF8编码的方式写入到文件a.txt”,你指创建出来的a.txt就是使用UTF8编码的吗?
作者:wqyfavor 时间:2011/2/16 17:01:53
 
回复:……更好些 utf8 对应 65001
  // 俄文的CODEPAGE为 1251或866  到时自己测试
  try
    // idhttp1.Get('hhttp://tieba.baidu.com', ss);
    idhttp1.Get('http://www.2ccc.com', ss);
    mmo1.Text := ss.DataString;
  finally
    ss.Free;
  end;
  // mmo1.Lines.Text := ……
作者:ljf 时间:2011/2/11 11:01:48
 
回复:var
 vResponse: TStringStream;//返回值的编码
 vParam:TStringList;//post参数
begin
{ gb2312=936,gb18030=54936,utf8=65001 }
vParam.Create;
vResponse := TStringStream.Create('', TEncoding.GetEncoding(936));
try
idhttp.request.charset:='gb2312';//指定编码
vP……
作者:star5 时间:2011/2/11 8:17:00
 
主题:关于indy 10.5.7的数据发送接收的用法分享
摘要:……ing.UTF8));
end;
//发送一行字符串数据
procedure TForm2.Button4Click(Sender: TObject);
begin
IdTCPClient1.IOHandler.Write(#12);//接收时便于区分接收的数据类型 自定义
IdTCPClient1.IOHandler.Write('文星',TIdTextEncoding.UTF8);//中文要指定编码,接收时也要进行相应的转换,否则中文会显示成?号
end;

接收:
pro……
作者:wenxing 时间:2010/11/27 21:34:31
 
回复:4.10.5的汉化是有问题,问题的原因是他的XML解码的时候有问题!导致某些中文解析不对,甚至解析不出来!修改的办法是将Res资源中的frxrcClass.xml等几个语言文件资源全部都转换成Ansi 编码格式,然后执行里面的Mk.bat批处理,生成新的语言资源替换一下,然后修改frxres的第201行将
Stream := TStringStream.Create({$IFDEF Delphi12}'', TEncoding.UTF8{$ELSE}Str{$ENDIF});替换成Ansi的处理方式……
作者:suiyunonghen 时间:2011/1/21 17:21:29
 
回复:慢的原因我可能猜得到:因为PerlRegEx是基于UTF-8的实现,因此每次Match或设定新的Pattern都会涉及到一次Unicode->UTF8的转换...
作者:adamwu 时间:2011/1/8 5:57:32
 
主题:uft8,delphi2010
摘要:Oracle数据库中编码是UTF8,我在繁体系统里面查看时,日文的内容是乱码。用delphi2010显示时也是乱码。
请教各位高手,我怎么才能把那些日文正确显示出来。
在线等待
望赐教!
作者:woodlee 时间:2010/12/21 14:52:12
 
回复:各位高手,
我的环境:
XP繁体,delphi2010,oracle10g(utf8编码)。
用adoconnect连接oracle,adoquery查询表,获取到的内容是乱码。我用UTF8Decode转换后,能够看到正确的日文内容。
下面情况例外:
我用toad工具查询时,看到的是:“ 绁炲宸濈湆宸濆磶甯傚窛宕庡尯鏉辨墖宄?锛戯紭? 锛”,后面还有个类似 | 这样的字符,但我adoquery查询获取到的是“ 绁炲宸濈湆宸濆磶甯傚窛宕庡尯鏉辨墖宄?锛戯紭? 锛”,后面没有上面说的那个字符,导……
作者:woodlee 时间:2010/12/23 15:25:34
 
回复:数据读出来 然后要转换一下再显示

UTF8用UNICODE来显示 当然是乱码了
作者:learu 时间:2010/12/21 15:22:30
 
回复:UTF8
作者:tintin1943 时间:2010/12/5 15:41:37
 
主题:期待UniDac最新版
摘要:[url]http://www.devart.com/unidac/revision_history.html[/url]

目前网上能下的是倒数第3版;

3.50.0.12 13-Sep-10

Embarcadero RAD Studio XE suppored 
Fixed bug with AL32UTF8 and ZHS16GBK encoding for Oracle in OCI and Direct modes. Now field size and strings sto……
作者:qingyun 时间:2010/9/27 18:59:46
 
回复:楼主只要把你解码出来的"浣犲ソ"
UTF8ToUnicodeString解码一下即可.
有些网站的URL使用ASCII编码,有些用UTF8编码.比如百度和谷歌的URL对中文编码就不一样.
作者:wr960204 时间:2010/11/1 11:21:48
 
主题:Query的参数是如何写的?
摘要:……符集使用UTF8会报错,不使用又会导致中文乱码这个问题该如何解决啊.……
作者:lovedelphi1 时间:2010/10/24 0:24:54
 
回复:將它轉成 utf8 即可,例:

procedure TForm1.Button1Click(Sender: TObject);
var
  Tmp: AnsiString;
begin
  Tmp:= UTF8Encode(Edit1.Text);
  Edit2.Text:=UTF8Decode(Tmp);
end;
作者:mainchen_ 时间:2010/9/22 5:01:46
 
回复:你是否 用的dbexpress 控件 访问的?
如果是 把 sqlconnection 控件的 链接参数 中 的 servercharset 设为 gb2312 即可,或者设成 utf8 ,二者必居其一。
作者:delphiilove 时间:2010/9/15 20:28:36
 
回复:参见:http://www.cnblogs.com/selectop
下的两篇文章
myDAC下utf8乱码的处理
作者:fei2046 时间:2010/9/15 10:26:25
 
回复:你看看你数据库里的中文是不是正常能显示的吧 在UTF8
作者:hcker 时间:2010/9/14 16:13:57
 
回复:得来的中文是UTF8吧。。转一下就可以了
作者:kygl 时间:2010/8/27 0:09:37
 
主题:成功登陆Delphi盒子后如何自动发帖
摘要:自动登陆Delphi盒子代码如下(delphi2010):
procedure TMyThread.Execute;
 var
  code: string;
  done: Boolean;
  postList: TStrings;
  Response: TStringStream;
begin
  Form1.Memo1.clear;

  // 开始登录代码
  Response := TStringStream.Create('', TEncoding.UTF8);……
作者:kingzgh 时间:2010/4/10 9:39:10
 
主题:blob 文本字段 utf8.D2010读取乱码问题??
摘要:我用 firebird 数据库.不知道其它数据库有没有这种情况..
 FB2.13+FIB699+D2010+Memo1
数据库 是 UTF8 编码 /改为 none 或 UNICODE_FSS 结果一样
//创建 Blob 字段
CREATE DOMAIN BZ AS
BLOB SUB_TYPE 1 SEGMENT SIZE 80; 


..写入 "2008年06月11日 星期三 下午 08:35" ..
IB Expert 里面是正确显示;

但 Memo1 显示 则有乱码"2……
作者:zh2000 时间:2010/6/19 10:51:04
 
主题:FastReport for Delphi2010 中文菜单显示不全或者乱码解决方法
摘要:中文菜单不能正确显示是由于它自带的资源编译器太老,和Delphi2010自带的TEncoding.UTF8不匹配造成的.此资源编译器frcc主要就是将资源文件*.xml中的资源编码后生成相应的.pas文件,没干啥高深的活。

以下是网友自建的Frcc程序,可以正常显示中文了.

原贴在http://hi.baidu.com/buckayro/blog/item/5e93d11ef4b4cafee1fe0b4c.html
可以自己编译一个frcc.exe,替换Res目录下的,然后再recompil……
作者:zwz_good 时间:2010/6/1 14:27:52
 
回复:[quote]测试N次。。。有英、中文的.txt。。。没见乱码[/quote]

文件大小至少要100K以上,否则确实不会,中文文档一定要是ANSI编码的,UTF8/UNICODE都没问题
作者:yxsoft 时间:2010/6/22 18:42:22
 
回复:你是用D2010吧,模板文件要用utf8编码
作者:drroc 时间:2010/6/8 23:24:34
 
回复:……? 我用utf8等也转化过的,还是一样。……
作者:cjg0307 时间:2010/5/28 16:24:27
 
主题:Delphi2010 UTF8Decode出错,求救,急急急
摘要:问题描述:
在用Delphi2010写isapi,接收上传文件,发现当文件名为中文时,用UTF8Decode解码会出错,“开发计划.xls”解成:“开发计?xls”

详细过程:
在Delphi2010中,接收到的数据存于AnsiString中,内容我用TStringStream保存下来,见附件123.txt,片段如下:
----------Ij5KM7GI3Ij5KM7ae0Ef1ei4KM7GI3
Content-Disposition: form-data; name="Filename……
作者:drroc 时间:2010/5/12 12:12:20
 
回复:折腾了一天一夜,发现了一个杯具!
IdTCPClient.IOHandler.DefStringEncoding := TIdTextEncoding.UTF8;
这样会报错!

只能每次发送和接收都要加上编码,杯具啊!
发送端:
IdTCPClient.IOHandler.WriteLn('...', TIdTextEncoding.UTF8);
接收端:
AContext.Connection.IOHandler.ReadLn(TIdTextEncoding.UTF8)
作者:iny 时间:2010/5/23 10:54:57
 
回复:要进行UTF8编码
作者:chuzx 时间:2010/5/22 18:58:04
 
回复:……
  TUTF8Encoding.Create in SysUtils was changed to set the
  MB_ERR_INVALID_CHARS flag:

         original: inherited Create(CP_UTF8);
    with Update 3: inherited Create(CP_UTF8, MB_ERR_INVALID_CHARS, 0);

  It appears that when used with CP_UTF8……
作者:loc 时间:2010/5/13 7:51:01
 
回复:竟然没有答,人气啊,还是自已解决了

用TStringList的确是不行,因为TStringList用的是String,unicode的,不能存某一些utf8字符,对原始的ansistring进行utf8Decode是正确的,没有乱码,楼上所述是因为我前面做了一次string的转换,所以有乱码了

不过还是不太明白,为什么unicode存不了一些utf8字符

可以参考csdn的讨论贴:
http://topic.csdn.net/u/20100121/20/6a051e08-c744-40……
作者:drroc 时间:2010/5/12 17:45:49
 
回复:我试过不会呀,D2010中File format改utf8都不会.
作者:wiseinfo 时间:2010/4/15 18:33:54
 
主题:Idftp获取中文目录乱码如何解决?
摘要:我用的是delphi2007,看到CSDN有人这样说: 

FTP.IOHandler.DefStringEncoding := TIdTextEncoding.UTF8

BigEndianUnicode;
Default; 
Unicode; 
UTF7;


其中有一个是正确的,但是我都试了一遍发现还是乱码,晕掉了请朋友指点。
作者:huzhan 时间:2009/11/6 14:47:20
 
回复:上面是2010下做的,delphi7自带的indy好象也不得,要用delphi7就升级一下indy
,Response := TStringStream.Create('', TEncoding.UTF8); 改成
Response := TStringStream.Create(' ');
装个httpwatch就知道为什么要加这些东西了

论坛上有些代码显示乱码,写我博客上了,自己去看一下吧
http://www.freedelphitips.com/log-inwebsite-u……
作者:windmil 时间:2010/4/8 13:53:42
 
回复:Response := TStringStream.Create('', TEncoding.UTF8);  这个提示不对

IdHTTP1.Post('http://bbs.hualongxiang.com/login.php', postList, Response);这个也不对,postlist前面的逗号再前面有分号
作者:kingzgh 时间:2010/4/8 13:06:48
 
回复:procedure TForm1.Button1Click(Sender: TObject);
var
  code: string;
  done: Boolean;
  postList: TStrings;
  Response: TStringStream;
begin
  memo1.clear;

  // 开始登录代码
  Response := TStringStream.Create('', TEncoding.UTF8);
  postList := TStr……
作者:windmil 时间:2010/4/6 23:44:08
 
回复:……ing.UTF8);
xml := list.Text;
list.Clear;
list.Add('unit ' +   fileName + ';');
list.Add('');
list.Add('interface');
list.Add('{$I frx.inc}');
list.Add('implementation');
list.Add('uses frxRes;');
list.Add('const resXML =');
xml……
作者:xxhadsg 时间:2010/4/6 8:48:51
 
回复:我那些文件就是用D2010另存的,试过utf8格式,结果一样不行
作者:playboy6220018 时间:2010/4/3 11:56:06
 
回复:文件如果存为UTF8格式就对了,XML没有指定编码,默认是UTF8,但你的文件又不是UTF8,所已就出错了
作者:friendbcb 时间:2010/4/2 13:09:17
 
回复:试试,编码参数哪里用TEncoding.UTF8,看看有没有效果.在delphi2010里我用这个与.net互发信息很正常.
作者:ywg663 时间:2010/3/20 21:55:11
 
回复:lazarus 的源代码现在都是用UTF8.
用它的KCL函数画文字没问题.但是如果要是调API,在WINCE下就必须转一次
作者:wr960204 时间:2010/3/19 14:15:53
 
回复:……_to_utf8 已经在 sqlite3.obj 中定义
1>xxteaCrypt.obj : error LNK2005: _sqlite3_randomness 已经在 sqlite3.obj 中定义
1>xxteaCrypt.obj : error LNK2005: _sqlite3_snprintf 已经在 sqlite3.obj 中定义
1>xxteaCrypt.obj : error LNK2005: _sqlite3_mprintf 已经在 sqlite3.obj 中定义
1>x……
作者:rinipp 时间:2010/1/28 13:45:56
 
主题:Lazarus对Unicode的支持的太差了!
摘要:就连最简单的字符串连接都有问题:
例如:
var
  S,Str: string; 

赋值表达式Str := S[1] + S[3]得到的将是乱码,
必须这样:
Str := Utf8Copy(S, 1, 1) + Uft8Copy(S, 3, 1);
而求字符串长度的函数Length()这时也不能用了,
必须用Utf8Length();

用TStrings类的方法存取文件,路径如果包含中文,也必须用Utf8ToAnsi进行转换。

如果这还是什么问题,那么最混乱的就是Laz……
作者:courage2008 时间:2010/1/23 11:38:30
 
回复:我也是对Lazarus的UTF8及其不爽.稍稍不注意就会遇到问题.特别是调用W结尾的Windows API的时候.
LCL类库的Bug也是不少.上次开发项目就遇到好几个.好在LCL你可以自己手工编译
作者:wr960204 时间:2010/1/23 18:02:51
 
回复:能说说UTF8跟UTF16的区别吗?


楼主辛苦了
作者:hawke2e 时间:2010/1/23 17:54:59
 
回复:delphi to freepas 需要换换脑子,不然就是撞墙。
如果在U/L/X开发UTF8最常用。
作者:chscheese 时间:2010/1/23 14:32:17
 
回复:不是的,字符集没有问题
  vUniCon.ProviderName:='MySQL';
  vUniCon.SpecificOptions.Values['Charset']:='utf8';
  vUniCon.SpecificOptions.Values['UseUnicode']:='True';

如果我改为
vQuery.SQL.Text := 'select userid from allusers where title=''总经理''';
v……
作者:llo2003 时间:2009/12/29 9:26:16
 
主题:有关fastReport保存文件的问题
摘要:不知道各位有没发现,同样的版本,比如 4.8.27,在D2010下安装时保存的文件是utf8编码的,在D7时安装时保存的文件是ansi编码的。
作者:aiicda 时间:2009/12/3 23:10:20
 
主题:UTF-8 与 Unicode 之间转换?
摘要:……
  Utf8ToUnicode(), UnicodeToUtf8() [这些函数system单元里面] . 都不能正确得到相应的unicdoe = 6C49 , utf8 = E6B189. 望有知道这方面的高手帮忙一下.

  我在网上还有看到 
Utf8ToUnicode就是将utf8编码的字符串转成UniCode码,相当于Utf8Encode将Utf8编码转成String。
UnicodeToUtf8就是将UniCode码转成utf8编码的字符串,相当于Utf8Decode将Stri……
作者:no74 时间:2009/11/5 10:34:46
 
回复:…… := UTF8Encode(s);
  ShowMessage(Format('%s=(utf8)%s', [s, StrToHex(us)]));
end;……
作者:upp 时间:2009/11/5 14:00:38
 
回复:……ing.UTF8);……
作者:soarowl 时间:2009/10/21 16:25:06
 
回复:一般的网站都是GBK啊啥的,UTF-8的没找到-0-
我用Utf8的WAP站测试了下。。。非常正常啊。。。
Memo1.Lines.Text := Idhttp1.Get('http://wap.163.com');
作者:f00l 时间:2009/10/18 12:41:57
 
回复:utf-8的中文不也是中文嘛-0-
或者你Get一个文件好了。。。
记事本照样能看-0-
UTF8的中文难道就不是中文了么T.T
作者:f00l 时间:2009/10/17 19:08:52
 
回复:1,修改Source下的frxRes.pas,AddXml
  Stream := TStringStream.Create(Str);
修改成Stream := TStringStream.Create(Str, TEncoding.Utf8);

2.可以自己编译一个frcc.exe,替换Res目录下的,然后再recompile即可。

用delphi 2010建立一个console工程,名称为frcc,代码如下:

program frcc;

{$APPTYPE CONSOLE……
作者:tang1 时间:2009/9/30 9:55:35
 
回复:今天看来大家都静默了。等了一天连个回复都没有。

说说我的进展。

idx文件格式为UTF8文件。内容为下面的数据格式。
word_str;  // a utf-8 string terminated by '\0'.
word_data_offset;  // word data's offset in .dict file
word_data_size;  // word data's total size in .dict file  

麻烦出在word_str,它是一个……
作者:jacktiger 时间:2009/9/26 1:19:12
 
主题:在D2010中使用UniDAC 3.0.0.2的BUG,TUniQuery+TDataSetProvider+TClientDataSet
摘要:…… is UTF8.
It is normal in Delphi 2010

It use TSQLQuery+TDataSetProvider+TClientDatasetIt is normal in Delphi2010/Delphi 7

保存中文数据,结果只保存一半进去的BUG.这是我写的英文,可惜没有Devart论坛的ID,不能反馈,希望有人帮忙反馈上去.……
作者:jianlei 时间:2009/9/20 10:49:09
 
主题:delphi的unicodestring是一个失误!?
摘要:……f16和utf8等编码方式作为codepage就可以轻易支持,兼容windows也一样,至于用数组方式访问字符串中的字符,其实也完全可以用函数来实现,而且意义更明确。
  大家以为如何?请讨论。……
作者:lfxsq 时间:2009/9/23 13:33:57
 
回复:delphi的字符串不仅有codepag域,还有引用技术和长度域,你是否认为这些域数据库中都保存了?
数据库中字符串存储格式和delphi的字符串格式无关,其存储格式取决于程序员和驱动程序。

----------

楼主,你想的太搞笑了吧。没错,存到数据库里可以用UTF8或UTF16。但是一个数据库管理软件或ERP,每个都要这样来转换,除了楼主以外没人会去开发软件了。
作者:doorkey 时间:2009/9/24 18:06:51
 
回复:按楼主这么说,把你所说的AnsiString存到数据库里是不是也要得把CodePage得记录下来???
----------
存数据库时可以存为utf8或是uft16完全。实际上,数据库的字符串如何存储和本文主题无关。
作者:lfxsq 时间:2009/9/24 15:11:30
 
主题:[转老贴]再谈Delphi vs VC++
摘要:……i都使用utf8压缩编码(一种类似于rtf的编码 
方法:凡是ascii字符都直接存储,多字节字符则用\进行转义),虽然(勉强)保证了兼 
容性却也代价不小。 
(ps:c++中的string/ansistring是用类模拟的,所以性能...) 
(7) 多重继承 
毫无疑问,object pascal不支持多重继承;并且也看不出borland有增加这一特性的意 

向(其实增加是轻而易举的)。object pascal通过接口(interface)实现多重继承。 
interface……
作者:woiwo 时间:2009/9/15 15:31:16
 
回复:……ing.UTF8(GetUTF8) 和 TEncoding.Default(GetDefalt),于是一个 TUTF8Encoding 和一个 TMBCSEncoding 都被创建了。也就是说,这两个对象是在 CnMemProf.initialization 之后创建的,CnMemProf 已经替换了 memory manager
但在程序结束的时候,这两个对象的释放却是在 class destructor TEncoding.Destroy 中。相信测过 class constructor/des……
作者:egust 时间:2009/9/16 11:09:25
 
回复:csdn 可以下到 10.5的完整版本。不过 这个版本的 UTF-8 编码貌似有问题的.
POST 不是用的ANSI而是自动变成了UTF8.

indy10.2.3是 Delphi2009 默认自带的.BUG N多
作者:hcker 时间:2009/9/5 13:01:03
 
回复:UTF8转到双字节的Unicode的时候会有损失.尽管几率很小
作者:wr960204 时间:2009/8/31 21:25:10
 
主题:问个Uncode的菜鸟问题
摘要:Delphi2010里面有unicodestring和utf8string这些unicode相关的类型,这两个应该一个是UTF16,一个是UTF8,原则上都是unicode的标准编码方式

那么unicodestring和utf8string互相转换会有data loss吗
好像utf8string := unicodestring时编译器会有警告,为什么
作者:yxsoft 时间:2009/8/30 23:07:55
 
回复:这样互转的话,基本都会有,因为UTF8编码是不定长的,有可能1个字节,也有可能是2个字节,3个字节,但是unicode就两字节,建议你别搞这个了,unicode基本包打天下
作者:lywaterman 时间:2009/8/31 19:38:33
 
主题:Ddelphi2009 UTF8编码问题
摘要:delphi2009 通过:webService 取得PHP上的了一个UTF8字符串:涓枃娴嬭瘯
通过Utf8Decode转换后的结果为:中文测试
我现在想返回成:涓枃娴嬭瘯 要如何做啊?用UTF8Encode得到的结果还是:中文测试

在D2007下:UTF8Encode('中文测试') 结果为:涓枃娴嬭瘯 在D2009下为什么不行呢?
==========
作者:hf20 时间:2009/6/28 0:33:28
 
回复:问题已经解决了,谢谢!
变量类型为:WideString 就是UTF8格式,可以使用了
作者:hf20 时间:2009/6/28 15:51:04
 
主题:MyDAC version 5.80.0.47 is available for download now
摘要:……put UTF8 symbols in log of Embedded server for Delphi 2009
Devart development team 
http://www.devart.com/mydac……
作者:vga 时间:2009/5/30 16:57:58
 
回复:你接收到的是utf8的字符串么?
作者:preserve 时间:2009/5/25 20:16:55
 
主题:使用ZEOS控件在DELPHI2007下连接SQLITE文件的乱码问题
摘要:我在DELPHI2007下使用ZEOS连接SQLITE数据库(3.6版本,UTF8编码),读取出来的数据只要是汉字的就是乱码,上网查了些资料后发现要在ZConnection的Properties下指定编码方式。但是自己试的时候无论如何都不能正确的读取中文,请各位帮帮忙,看下这个问题怎么解决,最好可以做个简单的例子,多谢多谢!
作者:erman 时间:2009/4/6 17:52:07
 
回复:默认获得是utf8编码的,要转换为ansi才正常
作者:lovezyp 时间:2009/4/2 19:45:23
 
主题:Sqlite中文模糊查询问题
摘要:前提:数据以ANSI保存的。不是UTF8.因为在GRID中修改UTF8的数据,保存会是乱码。


最近在用Sqlite编程时,遇到一个问题,在使用模糊查询时出来结果不对。
例:
'select * from employee where name like "陈%"'
结果是
其它姓的人员也在里面,而有些姓陈的确没有查询出来。

找了好些版本的sqlite3.dll都不行,从3.5.7-3.6.6都不行。后面找到了一个3.2.1却可以支持。哈哈。奇怪,这样的问题怎么在高版本反而不支持……
作者:freeman_m530 时间:2008/12/3 22:33:28
 
回复:中文问题补充:
frxUnicodeUtils单元下: 
把TWideStrings类的ReadDataW和WriteDataW函数中关于Utf8的转换去掉 

具体是: 

ReadDataW: 
//Add(Utf8Decode(Reader.ReadString)); 
Add(Reader.ReadString); 

WriteDataW: 
//Writer.WriteString(Utf8Encode(Get(I))); 
Writer.WriteString(Get……
作者:wszysystem 时间:2009/2/10 21:50:34
 
主题:D2007下使用TEncoding类进行UNICODE、UTF8、UTF32格式转换?
摘要:下载地址:http://www.rayfile.com/files/1f6d6517-eed9-11dd-8bce-0019d11a795f/


下载中,附有源码和Demo。
作者:senfore 时间:2009/1/31 20:14:42
 
回复:我也准备最近发布我的改版支持utf8的asqlite控件
以便和楼主交相呼应
作者:peliao 时间:2009/1/20 14:08:12
 
主题:为什么说Uncodestring类型向UTF8String类型转换会有数据损失
摘要:看了Marco Cantu的2009 hand Book
W1058 Implicit string cast with potential data loss from
'string' to 'UTF8String'

UTF8和UTF16都是表示Unicode的一种存储方式,那么从Uincodestring(我理解就是UTF16string)向UTF8string转换应该不会数据丢失啊

达人指教
作者:yxsoft 时间:2009/1/15 16:43:59
 
回复:UTF8是一种动态编码方案,根据字符所处的不同区位采用1-6字节编码,而UTF16统一采用2字节编码.
作者:rainstorey 时间:2009/1/15 17:45:58
 
主题:UTF-8的编码问题
摘要:……siToUtf8(sa);
sa:='http://www.google.com/search?hl=en&q='+sa;
ShellExecute(Handle, 'open', PAnsiChar(sa), nil,nil, SW_SHOWNORMAL);
不知道为什么转成的Utf8字符时不全,
比如说将“你好”转换成UTF8时没有问题是‘%E4%BD%A0%E5%A5%BD’,但是如果是“死神”转换成UTF8时却是‘%E6%AD%BB%E7?’而不是‘%E6%AD%BB%E7%A……
作者:chjk 时间:2009/1/12 16:33:06
 
回复:我其实就是想能达到google那样的就可以了英文就是英文,汉字就是utf8的%HH形式,不知有没有好的方法啊?
作者:chjk 时间:2009/1/13 17:28:23
 
主题:取得文件的编码问题,就是取得某文件是UTF8还是ANSI等
摘要:具我所所知,文件的编码就存在文件的开头几个字节中.

不知道有没有现成的模块能读取文件的字符编码!
作者:ivvn 时间:2008/12/24 8:57:57
 
回复:问楼上的

BOM_Utf8

BOM_UTF16_MSB  

这些东西在哪个单元中?
作者:ivvn 时间:2008/12/24 9:25:50
 
主题:NativeXml转换字符编码的问题
摘要:xml是utf8编码,因为程序中有多个地方读取值,每次取值都要用utf8toansi来转换,很繁琐

有没什么函数能一次将xml所有内容的编码转换过来,就不用那么多次调用转换函数了
作者:aqtata 时间:2008/11/22 5:12:19
 
主题:indy10支持设置编码吗?encoding
摘要:用的delphi2009  indy版本10.2.5

在用idhttp.get网页时返回的都是乱码
页面有utf8的也有gb2312的

不知道是不是要在get时设置好编码还是get下来后再转换
delphi2009还不太会,也不知道如何转
作者:aqtata 时间:2008/12/10 23:49:12
 
回复:因为是要在GRID中修改数据,所以使用Asqlite的updatesql来更新数据的。没办法转换为UTF8.

Asqlite有两种连接方式 ANSI与UTF8,选择了UTF8之后,就不能直接在GRID中修改中文数据,让它自动保存。
作者:freeman_m530 时间:2008/12/4 10:27:55
 
回复:虽然你程序是ansi的,但sqlite是utf8保存的,所以你的sql语句都要转成utf8.

ASQry.SQL.Text:=AnsiToUTF8('select ……'); //insert和update都要这样处理
ASQry.ExecSQL;
作者:channon 时间:2008/12/4 9:28:34
 
主题:老问题,帮忙解码邮件!
摘要:这是个老问题了,可我一直没有通过。这个邮件在delphi中解码后编码为utf8,超文本内容调用utf8toansi保存为html后在浏览器中打开是乱码,可在记事本中打开可以正常显示,在UltraEdit中打开是乱码。base94解码后调用utf8toansi在delphi的memo中也可以正常显示汉字。
大侠们再指点指点吧。不胜感激!
(附件需要改扩展名为eml,即邮件文件)
作者:xxhadsg 时间:2008/12/2 5:46:00
 
主题:给dejoy(DELPHI7 LITE绿色版制作者)留言
摘要:你好,在我使用Delphi7_Lite_Full_v7.3中发现两个问题。
这两个问题是升级到7.3后发现的。原3.0不会。
1.IMAGE不能放大超FORM大小。原程序在IMAGE放大超过FORM大小时,form会显示滚动条。以新的DELPHI编译,就不能会显示滚动条。
2.ANSITOUTF8的问题。SQLITE只支持UTF8路径,ANSI的中文路径不支持。升到7.3后,ANSITOUTF8失效了。原编译的程序OK,如果重新编译就提示打不开资料表了。

不知道是不是只是我的软件问题,我重新安……
作者:freeman_m530 时间:2008/11/23 2:04:24
 
回复:长度不一定的
我实际需要读取的是多个有规律间隔的地址
最大有效长度是32,其中可能需要读取的长度只有12,剩余都是00,然后间隔一段后,又出现需要读取的字符串,长度可能只有6,其中间隔是相等的
现在只是想等读出一个再说,后面重复的再慢慢研究
以3楼附件例子来说,我就是想把里面的utf8码的谢谢两个字能正常读取显示出来
作者:qhq 时间:2008/11/7 12:01:12
 
回复:例如我想读取附件$20开始的字符串(UTF8)
然后显示正常的汉字出来
该怎么读取?
作者:qhq 时间:2008/11/6 16:19:28
 
回复:选项-PHP-默认字符集:UTF8
作者:hzpp 时间:2008/11/1 20:10:38
 
主题:求Delphi2009下的Utf8与Ansi转换方法
摘要:……解码后的utf8字符串,我试过了很多种方法想把它转化为ansi的,但是总失败。
求达人帮忙!……
作者:macross 时间:2008/10/28 14:37:59
 
回复:UTF8 with BOM转为ANSI
作者:azsd 时间:2008/10/17 10:03:18
 
主题:Fastreport 4.7.x 修改及相关问题解答小结
摘要:FastReport 4.7.x 版本错误及修改小结

1.Unicode 代码集语言的界面字符处理错误:

从 FastReport 4.5.X 开始为实现多国语言处理,改用 UTF8格式 XML 文件保存界面字符资源,
Delphi2009 因能支持 Unicode 在内部编译和识别处理 UTF8 格式文件上的变化,造成了一些
涉及字符串及流处理与以前版本的不同.
首先,一个常数字符串在编译流化成 .dcu 文件时,会根据文件的格式和程序中对该常数字符串
的引用产生不同的编译结果.
……
作者:zjttpzg 时间:2008/10/15 14:08:35
 
回复:还有要做的是:
C:修改代码 frxRes.pas
procedure TfrxResources.AddXML(const Str: AnsiString);
var
  Stream: TStringStream;
begin
//PZG UTF8 BOM 格式保存并编译,为兼容,先进行格式转换
//  Stream := TStringStream.Create(str);
//  LoadFromStream(Stream);
//  Stream.Free;
  Stream……
作者:zjttpzg 时间:2008/10/16 20:16:06
 
主题:FastReport4.5 中文显示 解决方案
摘要:最近下了个FastReport4.5FS,感觉还不错
但是,很快就遇到很郁闷的事情了。
首先发现的是字段标题是“姓名”的时候,预览时候很正常,但是运行的时候就莫名其妙消失了。。。
继而发现,有很多中文都是这么不见得,甚至有空格都会导致这种情况发生。。。
幸而是FS,研究了一天FS后发现,问题出在FR4.5的编码上了
FR4.5采用了UTF8编码,但是Delphi默认的编码似乎是Ansi编码
在xmlToObj和objToXml函数中,可以明显看到其中进行了编码的转换
UTF8Encode后的……
作者:lovewormcn 时间:2008/4/22 22:48:59
 
回复:……格式是 UTF8,串的引用申明是 AnsiString
流化成: 原串=UTF8格式,引用=AnsiString + 语言代码页 格式
如:文件格式是 UTF8,串的引用申明是 String
流化成: 原串=UTF8格式,引用=UTF8 格式

5.另外提请注意的是:
delphi2009 中打开过的带有窗体的程序,会在delphi2007 中会引起运行异常或设计时异常,这个问题会出现多种不同的表现,诸如:
控件注册时出错,程序引导时出错,单元初始化出错,运行时报某属性不存在...……
作者:zjttpzg 时间:2008/10/15 14:12:33
 
回复:2. 多语言界面处理的解决

从 FastReport 4.5.X 开始为实现多国语言处理,改用 UTF8格式 XML 文件保存界面字符资源,
Delphi2009 因能支持 Unicode 在内部编译和识别处理 UTF8 格式文件上的变化,造成了一些
涉及字符串及流处理与以前版本的不同.
首先,一个常数字符串在编译流化成 .dcu 文件时,会根据文件的格式和程序中对该常数字符串
的引用产生不同的编译结果.
如:文件格式是 UTF8,串的引用申明是 AnsiString
流化成: 原串=U……
作者:zjttpzg 时间:2008/10/15 14:12:16
 
回复:更正一点:
6: 修改 frxRes.pas
procedure TfrxResources.AddXML(const Str: AnsiString);
var
  Stream: TStringStream;
begin
//PZG UTF8 BOM 格式保存并编译,为兼容,先进行格式转换
  Stream := TStringStream.Create(UTF8Encode(String(str)));
  try
    LoadFromStream(Stream);
  fi……
作者:zjttpzg 时间:2008/10/15 12:17:49
 
回复:6: 修改 frxRes.pas
procedure TfrxResources.AddXML(const Str: AnsiString);
var
  Stream: TStringStream;
begin
{$IFDEF Delphi12}          //PZG UTF8 BOM 格式保存并编译,为兼容,先进行格式转换
  Stream := TStringStream.Create(UTF8Encode(String(str)));
{$ELSE}
  Stream :=……
作者:zjttpzg 时间:2008/10/13 14:41:48
 
回复:FastReport 4.7.3 版本错误及修改

1.Unicode 代码集语言的界面字符处理错误:

从 FastReport 4.5.X 开始为实现多国语言处理,改用 UTF8格式 XML 文件保存界面字符资源,
Delphi2009 因能支持 Unicode 在内部编译和识别处理 UTF8 格式文件上的变化,造成了一些
涉及字符串及流处理与以前版本的不同.
首先,一个常数字符串在编译流化成 .dcu 文件时,会根据文件的格式和程序中对该常数字符串
的引用产生不同的编译结果.
如:……
作者:zjttpzg 时间:2008/10/13 12:58:57
 
回复:在代码编辑器上右击,点 File format 再选择utf8格式就可以了
作者:rzh 时间:2008/10/9 15:26:33
 
主题:北京高薪招聘全职delphi程序员
摘要:招聘人数:3人
工作年限:二年以上
待遇:面议(与个人能力挂钩的薪酬)
地点:北京市朝阳区国贸建外SOHO

1. 精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)
2. 熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
3. 计算机或相关专业大专以上学历; 
4. 扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
5. 良好的执行能力,较好的完成预定任务; 
6. 思维严密,上进心强,能吃苦耐劳,有团队合作精神;
7……
作者:_wheel 时间:2008/10/7 11:28:10
 
主题:delphi下有什么ftp控件能实现这种返回信息输出?
摘要:类似与这样的

[左] 211- Features supported 
[左] REST STREAM
[左] EPRT
[左] EPSV
[左] SIZE
[左] MDTM
[左] AUTH
[左] PBSZ
[左] PROT
[左] MLST type*;size*;modify*;
[左] MLSD
[左] UTF8
[左] 211 End
[左] OPTS UTF8 ON
[左] 200 OK, UTF8 ON.
[左] PWD
[左] 257 "/"
[左……
作者:coolspace 时间:2008/10/2 16:11:45
 
主题:请教UTF8编码问题
摘要:我要把‘中国’变成UTF8的‘涓浗’复制到剪贴板
Clipboard.SetTextBuf(Pchar(str));
可是无论怎么转换‘中国’粘贴出来的永远还是‘中国’。。。
请问在Delphi2009中到底要怎么做呀T.T
作者:f00l 时间:2008/10/1 11:43:42
 
主题:北京高薪招聘全职PHP程序员,急!
摘要:招聘人数:4人
工作年限:二年以上
待遇:5k以上(与个人能力挂钩的薪酬)
地点:北京市朝阳区国贸建外SOHO

1. 精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)
2. 熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
3. 计算机或相关专业大专以上学历; 
4. 扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
5. 良好的执行能力,较好的完成预定任务; 
6. 思维严密,上进心强,能吃苦耐劳,有团队合作精神;……
作者:wuyao830920 时间:2008/9/27 9:47:06
 
回复:招聘人数:4人
工作年限:二年以上
待遇:5k以上(与个人能力挂钩的薪酬)
地点:北京市朝阳区国贸建外SOHO

1. 精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)
2. 熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
3. 计算机或相关专业大专以上学历; 
4. 扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
5. 良好的执行能力,较好的完成预定任务; 
6. 思维严密,上进心强,能吃苦耐劳,有团队合作精神;……
作者:skandy10220 时间:2008/9/27 12:31:49
 
回复:再反复看了一下所有的回复,认为21楼的观点比较可信
21楼:
问题出在字符集上
服务器设置:MySQL 字符集: UTF-8 Unicode (utf8
          MySQL 连接校对 UTF8_general_ci

C/S
客户端查询时先query("SET NAMES 'GBK'")
然后你再query('select * from gongxiang  where About="你好"  order by ID DESC')

B/S
客户端查询时先qu……
作者:liuzemin 时间:2008/9/18 15:56:08
 
回复:半仙真是厉害,果然活了

俺本来也是怀疑文件格式,就把有汉字的文件转换成utf8的,结果还是一个死

就是没想起来把全部文件都转换掉

一个字,笨死了

..
作者:lyong7788 时间:2008/9/11 15:39:09
 
回复:用EmEditor/ConvertZ等把你的pas批量转为utf8 with BOM, 可不死.
作者:azsd 时间:2008/9/11 14:07:00
 
回复:liuzemin:

    问题出在字符集上
服务器设置:MySQL 字符集: UTF-8 Unicode (utf8
          MySQL 连接校对 UTF8_general_ci

C/S
客户端查询时先query("SET NAMES 'GBK'")
然后你再query('select * from gongxiang  where About="你好"  order by ID DESC')

B/S
客户端查询时先query("SET NAMES '……
作者:redasurc 时间:2008/9/9 20:01:48
 
回复:客户端程序连接数据库时set names 'GBK'

服务端MySQL配置库为utf8_general_ci

完全支持中文查询
作者:redasurc 时间:2008/9/9 8:34:24
 
回复:Delphi2009使用UTF8编码保存pas文件,一些比较老版本的pas文件不是这个编码,不打开的话,2009按照UTF8读它就会出问题。
作者:upp 时间:2008/9/3 13:32:09
 
主题:北京急聘delphi程序员
摘要:招聘人数:4人
工作年限:二年以上
待遇:5k以上(与个人能力挂钩的薪酬)
地点:北京市朝阳区国贸建外SOHO

1. 精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)
2. 熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
3. 计算机或相关专业大专以上学历; 
4. 扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
5. 良好的执行能力,较好的完成预定任务; 
6. 思维严密,上进心强,能吃苦耐劳,有团队合作精神;……
作者:wuyao830920 时间:2008/8/21 11:10:08
 
主题:北京急聘delphi程序员
摘要:招聘人数:4人
工作年限:二年以上
待遇:5k以上(与个人能力挂钩的薪酬)
地点:北京市朝阳区国贸建外SOHO

1. 精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)
2. 熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
3. 计算机或相关专业大专以上学历; 
4. 扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
5. 良好的执行能力,较好的完成预定任务; 
6. 思维严密,上进心强,能吃苦耐劳,有团队合作精神;……
作者:wuyao830920 时间:2008/8/18 10:50:26
 
回复:支持中文的解决方案:
给数据库赋值时将编码转换成UTF8即可。
作者:xplibox 时间:2008/8/13 8:38:12
 
主题:北京月薪5k以上招聘全职delphi程序员,急!
摘要:招聘人数:4人
工作年限:二年以上
待遇:5k以上(与个人能力挂钩的薪酬)
地点:北京市朝阳区国贸建外SOHO

1. 精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)
2. 熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
3. 计算机或相关专业大专以上学历; 
4. 扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
5. 良好的执行能力,较好的完成预定任务; 
6. 思维严密,上进心强,能吃苦耐劳,有团队合作精神;……
作者:_wheel 时间:2008/7/25 11:43:39
 
主题:招聘 DELPHI中级程序员 (工作地点:北京)
摘要:传神联合(北京)信息技术有限公司
DELPHI 中级程序员:
1. 精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)
2. 熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
3. 计算机或相关专业大专以上学历; 
4. 扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
5. 良好的执行能力,较好的完成预定任务; 
6. 思维严密,上进心强,能吃苦耐劳,有团队合作精神;
7. 有良好的个人职业生涯规划。
另:
1、 有2年……
作者:_wheel 时间:2008/6/12 17:00:09
 
主题:北京月薪5K求delphi程序员,急!
摘要:招聘人数:4人
工作年限:二年以上
待遇:5K以上(与个人能力挂钩的薪酬)
地点:北京市朝阳区东三环中路39号建外SOHO16号楼27层
 能力要求:
1、精通DELPHI开发;(熟悉:XML,Unicode,utf8,VBA,算法)熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
2、计算机或相关专业大专以上学历; 
3、扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
4、良好的执行能力,较好的完成预定任务; 
5、思维严密,上进心强,能吃苦耐劳,……
作者:wuyao830920 时间:2007/11/2 14:48:10
 
回复:熟悉:XML,Unicode,utf8,VBA,算法
这一句 有点外行..........
不过既然是招人的 还是 顶一顶吧...
作者:hecongzhen 时间:2008/7/12 18:47:56
 
回复:熟悉:XML,Unicode,utf8,VBA,算法

第一次看到招聘的这么写的,写招聘的人看来是外行。
作者:jackalan 时间:2008/7/11 15:22:39
 
主题:北京招DELPHI程序员
摘要:招聘人数:3
工作年限:二年以上
能力要求:
1.  精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)
2.  熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
3.  计算机或相关专业大专以上学历; 
4.  扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
5.  良好的执行能力,较好的完成预定任务; 
6.  思维严密,上进心强,能吃苦耐劳,有团队合作精神;
7.  有良好的个人职业生涯规划。
薪水范围:5-10K……
作者:zhaoguowei 时间:2008/7/8 9:28:37
 
主题:招聘 DELPHI中级程序员 (工作地点:北京)
摘要:职业要求:
1. 精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)
2. 熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
3. 计算机或相关专业大专以上学历; 
4. 扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
5. 良好的执行能力,较好的完成预定任务; 
6. 思维严密,上进心强,能吃苦耐劳,有团队合作精神;
7. 有良好的个人职业生涯规划。

公司地址:北京市朝阳区东三环中路建外SOHO18号楼1701

……
作者:wuyao830920 时间:2008/5/9 13:50:07
 
主题:北京 招聘delphi程序员,急!待遇优厚
摘要:delphi程序员职位要求
1. 精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)
2. 熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
3. 计算机或相关专业大专以上学历; 
4. 扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
5. 良好的执行能力,较好的完成预定任务; 
6. 思维严密,上进心强,能吃苦耐劳,有团队合作精神;
7. 有良好的个人职业生涯规划。
另:
1、 有2年以上中型项目开发经验。
2、 有O……
作者:wuyao830920 时间:2008/6/2 14:43:10
 
回复:" 精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)
2. 熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;"
要求这么高。。。。。
作者:handsomemank 时间:2008/6/6 22:57:03
 
回复:utf8肯定不行
gb2312就行了
作者:kingofsun 时间:2008/5/15 20:08:00
 
主题:再谈Delphi vs VC++(非常精彩)[转]
摘要:……i都使用utf8压缩编码(一种类似于rtf的编码
方法:凡是ascii字符都直接存储,多字节字符则用进行转义),虽然(勉强)保证了兼
容性却也代价不小。
(ps:c++中的string/ansistring是用类模拟的,所以性能...)

(7) 多重继承
毫无疑问,object pascal不支持多重继承;并且也看不出borland有增加这一特性的意
向(其实增加是轻而易举的)。object pascal通过接口(interface)实现多重继承。
interface不仅可以引入用o……
作者:jlwen 时间:2008/5/5 6:11:16
 
主题:转 解决Fr4.5中文问题
摘要:
frxUnicodeUtils单元下:
把TWideStrings类的ReadDataW和WriteDataW函数中关于Utf8的转换去掉

具体是:

ReadDataW:
    //Add(Utf8Decode(Reader.ReadString));
    Add(Reader.ReadString);

WriteDataW:
    //Writer.WriteString(Utf8Encode(Get(I)));
    Writer.WriteString(Ge……
作者:glwshch 时间:2008/5/3 22:52:09
 
回复:frxUnicodeUtils单元下:
把TWideStrings类的ReadDataW和WriteDataW函数中关于Utf8的转换去掉

具体是:

ReadDataW:
    //Add(Utf8Decode(Reader.ReadString));
    Add(Reader.ReadString);

WriteDataW:
    //Writer.WriteString(Utf8Encode(Get(I)));
    Writer.WriteString(Get(……
作者:glwshch 时间:2008/5/3 22:49:37
 
回复:中文变量名我用过。
由于到Delphi2007为止,还不是Unicode的,因此Object Inspector内还不能用中文名称。只能在Pas文件内用。好像Pas文件也不能手工指定存储为UTF8
作者:vclclx 时间:2007/12/30 10:07:47
 
主题:招聘Delphi高级程序员
摘要:招聘人数:4
工作年限:二年以上
能力要求:
1. 精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)
2. 熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
3. 计算机或相关专业大专以上学历; 
4. 扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
5. 良好的执行能力,较好的完成预定任务; 
6. 思维严密,上进心强,能吃苦耐劳,有团队合作精神;
7. 有良好的个人职业生涯规划。
薪水范围:5-10K
联系方式:……
作者:zhaoguowei 时间:2007/7/6 10:47:18
 
主题:北京月薪5k以上招聘全职Delphi程序员,急!
摘要:招聘人数:4人
工作年限:二年以上
待遇:5K以上(与个人能力挂钩的薪酬)
地点:北京市朝阳区国贸建外SOHO
能力要求:
1、精通DELPHI开发;(熟悉:XML,Unicode,utf8,VBA,算法)熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
2、计算机或相关专业大专以上学历; 
3、扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
4、良好的执行能力,较好的完成预定任务; 
5、思维严密,上进心强,能吃苦耐劳,有团队合作精神;
6、有良……
作者:wuyao830920 时间:2007/8/30 14:09:25
 
主题:北京地区诚聘delphi程序员
摘要:1、精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
2、计算机或相关专业大专以上学历; 
3、扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
4、良好的执行能力,较好的完成预定任务; 
5、思维严密,上进心强,能吃苦耐劳,有团队合作精神;
6、有良好的个人职业生涯规划。

我的email:luwenjiao.watt@163.com
作者:celia 时间:2006/10/26 20:59:35
 
主题:[求助]delphi2007与mysql5的字符集问题
摘要:最近下载的delphi2007与mysql5.0,准备先学下。
在用的过程中发现以下问题:
用mysql-front3.2建立mysql数据库,用litian字符集,但在mysql-front3.2中中文显示为“??”,但在
delphi2007中能修改为中文并正确显示,如数据库用gbk或gbeb2312或utf8,在mysql-front3.2中能正确显示
中文,但在delphi2007中不能正确显示,显示为“??”,且不能修改。利用delphi2007的sql追踪,发现是在修改记录时的语句 u……
作者:tuao 时间:2007/7/3 17:34:32
 
主题:ado+odbc+sybase ASA8下面的SQL怎么会报错??哪位大侠知道?谢谢
摘要:ASA8用UTF8结构,下面的语句总是无法成功

update  ts_modcst  set  c_nam='公司总邮箱设置' where c_id='8017';

真是搞不明白了
作者:hahale 时间:2007/5/21 23:51:02
 
主题:北京IT公司急招Delphi程序员
摘要:本公司为北京一家大型辅助翻译管理平台开发商,现急招Delphi开发人员。
岗位需求如下
1、精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
2、计算机或相关专业大专以上学历; 
3、扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
4、良好的执行能力,较好的完成预定任务; 
5、思维严密,上进心强,能吃苦耐劳,有团队合作精神;
6、有良好的个人职业生涯规划。
请有意者与我联系……
作者:lisa_ruru 时间:2007/4/28 18:07:49
 
主题:[CodeGear] Delphi for PHP update1
摘要:Delphi for PHP update1 已经发布了,解决了utf8编码问题和中文Form保存问题。请用兴趣的朋友下载试用。

如果您以前安装过Delphi for PHP,请卸载以后再安装这个版本。这是一个full release版本。

http://dn.codegear.com/article/36406
作者:zizii 时间:2007/5/9 19:39:32
 
主题:关于IDHTTP德问题
摘要:我在用IDHTTP的post方法的时候,传递的参数中包含'+'字符,结果IDHTTP不将其转换为utf8字符,这个该怎么办呢?
作者:hailants 时间:2007/3/26 20:20:53
 
回复:function gb2utf8($gb){
if(!trim($gb)) return $gb;
$filename="gb2312.txt";
$tmp=file($filename);
$codetable=array();
while(list($key,$value)=each($tmp))
$codetable[hexdec(substr($value,0,6))]=substr($value,7,6);

$utf8="";
while($gb) {
if (ord(su……
作者:chinawrc 时间:2006/9/16 14:48:49
 
回复:是这样的,我用MIDletPascal写个JAVA程序,里面需要把GB3212转换成UTF8. 可是MIDletPascal比起DELPHI来函数少的可怜,所以才想来求助.不知道能不能用码表对应的方法??
作者:chinawrc 时间:2006/9/16 14:44:12
 
主题:北京创业型公司高薪诚聘DELPHI高级程序员
摘要:1、精通DELPHI开发;(熟悉:XML,Unicode,utf8,vba,算法)熟悉CMM、RUP等软件标准与规范;具有良好的数据结构基础知识,及应用经验;
2、计算机或相关专业大专以上学历; 
3、扎实的基本功,结构清晰、合理,具有大型系统的设计经验; 
4、良好的执行能力,较好的完成预定任务; 
5、思维严密,上进心强,能吃苦耐劳,有团队合作精神;
6、有良好的个人职业生涯规划。
QA:
 1 希望有5K实力以上的人加盟.
 2 推荐有实力的人加盟的,本人可获得一定的回报(1K-2K……
作者:wht7703 时间:2006/7/15 21:52:40
 
主题:UTF8编码写入exe问题
摘要:以下代码写入的时候总是无发正常写入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……
作者:qhq 时间:2006/1/10 23:17:38
 
主题:急!请问utf8与gb2312怎么转换
摘要:   在delphi中,想把一个字符串,比如“20 13933 155”,经过utf8编码后,再用socket流发送出去。或者从socket流读取utf8数据,转换成字符串,请问各位大虾有没这方面的资料,谢谢啦!在线等啊!
作者:chechx 时间:2005/10/21 8:49:57
 
主题:关于UTF16与UTF8编码的转换问题,请高手指点,谢谢!!!
摘要:我从数据库读取的记录是UTF16编码的,下载是用UTF-8的,怎么实现两者的转换
作者:shy_37 时间:2005/8/9 15:52:45
 
主题:北京公司招骋DELPHI程序员
摘要:研发中心-DELPHI高级工程师

需求人数:3人    月薪:面议

能力要求:
1:要求对DELPHI编程技术有较深的认识。
2:编码风格良好。
3:做事有追求完美的精神。
4:最好具有XML,Unicode,utf8相关知识.
5:熟悉相关算法。
6:有VBA开发经验者优先录用.


工作经验2年以上,应届毕业生有实践经验且非常优秀的也可考虑。
作者:wht7703 时间:2005/6/12 15:06:36
 
回复:看起来好像用的是UTF8格式。
作者:iamdream 时间:2005/5/27 16:56:57
 
回复:小弟是没在WINXP灌过SQL,
因为习惯用WIN2K,所以没遇过你所说的问题,
但若是UINCODE问题,UNICODE2与UINOCODE8,
那么只需将资料转换
上面那一微软的网址不是说:
在 Windows NT 或 Windows 2000 上,可以使用 Win32 函数 MultiByteToWideChar 及 WideCharToMultiByte,将常数 CP_UTF8 (65001) 当作函数的第一个参数来传递,以将 UTF-8 转换到 UCS-2 或从 UCS-2 转换到 ……
作者:ptgfr 时间:2005/5/13 10:56:49
 
主题:utf8字符如何转换为16进制编码
摘要:在编程的过程中遇到类似的问题
作者:kwmxw 时间:2004/6/4 17:31:39
 

第一页 上一页 下一页 最后页
转到

DELPHI盒子版权所有