delphi的UTF8相关函数】的更多相关文章

delphi的UTF8相关函数 AnsiToUtf8 function Converts a string encoded in Ansi to UTF-8. PUCS4Chars function Converts a UCS4 string to a null-terminated array of UCS4 characters. StringToWideChar function Returns a UNICODE string from an AnsiString. UCS4Strin…
// UTF-8文件写入函数procedure SaveUTFFile(const FileName: string; S: string; WriteHeader: Boolean = True);var  MemStream: TMemoryStream;  HeaderStr: String;begin  if S = '' then Exit;   MemStream := TMemoryStream.Create;  try    if WriteHeader then    begi…
新版的 Delphi 應該不用這麼麻煩, 據說只要直接在 AnsiString, WideString, UTF8String 之間 assign 時就會自動幫你做轉換 (沒用過, 不知道是不是真的這樣就可以). 不過... 還在用 Delphi 3/5, 所以... 只好自己來轉: unit util_utf8; interface uses Windows; type UTF8String = AnsiString; function AnsiToWide(const S: AnsiStri…
// UTF-8文件写入函数 procedure SaveUTFFile(const FileName: string; S: string; WriteHeader: Boolean = True); var MemStream: TMemoryStream; HeaderStr: String; begin if S = '' then Exit; MemStream := TMemoryStream.Create; try if WriteHeader then begin HeaderS…
最近的项目(Delphi开发),需要经常和java语言开发的系统进行数据交互(Socket通信方式),数据编码约定采用UTF-8编码. 令我无语的是:JAVA系统那边反映说,Delphi发的数据他们收到是乱码,而我这边(Delphi7,ANSI)收到的数据将utf-8转码成ansi也是乱码. 因为不太熟悉java语言,还曾经怀疑是不是Delphi的utf-8编码和java语言的不一样. 最近学习了一下java的相关知识,写一个小程序来测试验证一下我曾经的怀疑. 事实证明,Delphi7的UTF-…
1.Delphi 的 Utf-8 转换 - findumars - 博客园.html https://www.cnblogs.com/findumars/archive/2013/12/26/3492891.html 新版的 Delphi 應該不用這麼麻煩, 據說只要直接在 AnsiString, WideString, UTF8String 之間 assign 時就會自動幫你做轉換 (沒用過, 不知道是不是真的這樣就可以). 不過... 還在用 Delphi 3/5, 所以... 只好自己來轉…
微信现金红包发送接口,好像没法限制一个用户一个活动只能领取一次红包,在调用红包接口上,自己做了限制 REDPACK_RECORD 建表sql -- Create table create table REDPACK_RECORD ( open_id VARCHAR2(32), act_id VARCHAR2(32), send_time TIMESTAMP(6) WITH LOCAL TIME ZONE default sysdate, mch_billno VARCHAR2(28), resu…
System.SysUtils System::DynamicArray<System::WideChar> TCharArray System::TArray__1<System::WideChar> TCharArray; TCharArray String TBytes byte 编码类型有:ASCII.8BIT.7BIT.UCS2-BIG.UCS2-LIT.UCS2-80.UCS2-81.UCS2-82.UTF-8.UTF-16(Unicode) RawToBytes By…
Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Embarcadero\BDS\19.0\Editor] "DefaultFileFilter"="Borland.FileFilter.UTF8ToUTF8" 按上面修改注册表,之后,源文件将按UTF8保存.Delphi 10.3.1测试通过. 注意,这只是针对新建的文件,对于旧文件,只能打开他,再选择他的格式: 可能你要问为什么? 在…
... var f: TextFile; begin AssignFile(f, 'test.txt'); Rewrite(f); write(f, #$EF+#$BB+#$BF); // UTF-8 BOM.关键就是写入这个UTF-8的BOM, BOM 是 Bype Order Mark 的缩写. writeln(f, UTF8Encode('中文')); CloseFile(f); ... 在delphi中TextFile对象创建文件时默认是 ANSI 编码. 这样中文或者其他非英文字符显示…
汉=BABA(内码)=-A0A0=2626(区位码)字=D7D6(内码)=-A0A0=5554(区位码) 各种编码查询表:http://bm.kdd.cc/ 汉(记住它,以后碰到内存里的数值,就会有敏感性了,会方便测试)utf8 = E6 B1 89unicode = 6C 49 ,在Delphi2010的dfm里存储的是它的十进制 27721GBK = BA BA 吴utf8 = E5 90 B4unicode = 54 34 ,在Delphi的dfm里存储的是它的十进制 21556GBK =…
读取UTF-8格式的文件内容 function LoadUTF8File(AFileName: string): string; var ffileStream:TFileStream; fAnsiBytes: string; S: string; begin ffileStream:=TFileStream.Create(AFileName,fmOpenRead); SetLength(S,ffileStream.Size); ffileStream.Read(S[],Length(S));…
因为Delphi自带的转换函数遇到其无法识别的字符串就返回空,下面函数可解决该问题. function DecodeUtf8Str(const S: UTF8String): WideString;var  lenSrc, lenDst  : Integer;begin  lenSrc := Length(S);  if (lenSrc=0) then Exit;  lenDst := MultiByteToWideChar(CP_UTF8, 0, Pointer(S), lenSrc, nil…
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 Uses IniFiles;   const   SZ_APP_NAME = 'demo_test';   Proc…
IncludeTrailingPathDelimiter(const S: string): string; 功能 返回包括最后路径分隔符 说明 最后一个字符是路径分隔符则不变;否则加上一个路径分隔符返回 参考 function SysUtils.IsPathDelimiter;function System.Length 例子 path := IncludeTrailingPathDelimiter(dir); ━━━━━━━━━━━━━━━━━━━━━ ExcludeTrailingPath…
unit util_utf8;    interface    uses Windows;    type   UTF8String = AnsiString;      function AnsiToWide(const S: AnsiString): WideString;   function WideToUTF8(const WS: WideString): UTF8String;   function AnsiToUTF8(const S: AnsiString): UTF8Strin…
应女朋友的要求,要写一款销售管理的软件.用于管理服装店每天的销售记录,已及管理服装店的客户,并对客户进行生日提醒 因为之前使用C#写过一款家庭管理软件,主要是自己用,所以使用了服务器型数据库MySQL,积攒了一些数据库软件的开发经验. 针对这次的软件需求决定采用SQLite,因为本人比较鄙视Access,主要是因为不能跨平台,而且在实际需求上SQLite更适合. 因为女朋友要求尽快,那就必须得要快了... 这次采用了Delphi+SQLite的结构来写的,之前一直喜欢Delphi,但是没有深入涉…
Delphi XE5带了system.json单元,原生提供了json支持类.下面是解析json用法说明: 最简单的JSON大致像这样 { "date":"周二(今天, 实时:12℃)", "dayPictureUrl":"http://api.map.baidu.com/images/weather/day/duoyun.png", "nightPictureUrl":"http://api.m…
先介绍一下,Delphi中处理Google的URL编码解码,其中就会明白URL编码转换的方法的 从delphi的角度看Google(谷歌)URL编码解码方式 在网上搜索了一下,似乎没有什么关于google的URL编码解码的很详细的资料,因此在这里写一下,希望给有用的人提供一点帮助. 使用google谷歌搜索一下关键词,对应的编码如下: 刀:%E5%88%80 刀具:%E5%88%80%E5%85%B7 刀具网:%E5%88%80%E5%85%B7%E7%9A%84 因此可见,google对URL…
WIN7, Vista提供的UAC机制,它的主要目的是防止对于操作系统本身的恶意修改.对于Delphi程序的影响,UAC主要在于以下几点:1.由于UAC机制,Delphi对于系统的操作可能无声的失败,而同样的程序,在2000/X下面可能运行正常.譬如注册表的改动...2.为了避免这样的情况,Delphi程序必须支持Vista UAC标注,也就是说,在UAC程序的图标下面显示盾牌标志.这样可以在需要系统更高权限的时候,提醒用户.为了让程序显示UAC标志,现在看来Vista是通过读取程序的资源(Re…
1.制作manifest文件 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <trustInfo xmlns="urn:schemas-microsoft-…
搞了我几个小时,终于成功在 Delphi 中静态链接了 SQLite (v3.5.4),下一步就是研究加密了,呵呵中间其实遇到很多问题,今天累了,就不说了,改天补上 下载测试工程 下面说说方法 1.当然是下载 SQLite 的源代码啦,呵呵,不过记得要是 all in one 的 amalgamation 版本哦  (修正: amalgamation 并非 all in one, 只是 core code all in one, 源代码里的其他文件也是不能少的!)2.解压缩,得到3个文件 sql…
WebBrowser1.GoHome; //到浏览器默认主页 WebBrowser1.Refresh; //刷新 WebBrowser1.GoBack; //后退 WebBrowser1.GoForward; //前进 WebBrowser1.Navigate('...'); //打开指定页面 WebBrowser1.Navigate('about:blank'); //打开空页面 //打开空页面, 并写入... WebBrowser1.Navigate('about:<head><ti…
一.调用javascript的方法 两种: 第一种:采用自编函数的方法 function ExecuteJavaScript(WebBrowser:TWebBrowser; Code: string):Variant;var //发送脚本Document:IHTMLDocument2;Window:IHTMLWindow2;begin// execute javascript in webbrowserDocument:=WebBrowser.Document as IHTMLDocument2…
在前4讲中我们已经使iw开发的应用成功和微信进行了对接,再接下来的章节中我们开始逐一尝试和实现微信的各个API,开始前先来点准备工作 首先需要明确的是,微信的API都是通过https调用实现的,分为post方法调用和get方法调用.不需要上传数据的采用get方法(例如获取AccessToken),而需要向微信服务器提交数据的采用post方法(例如创建菜单). 微信方法调用均需传递AccessToken(URL参数方式),这个AccessToken不是我们微信接入时使用的Token,这个Acces…
示例代码已经放出!请移步使用delphi+intraweb进行微信开发1~4代码示例进行下载,虽为示例代码但是是从我项目中移出来的,封装很完备适于自行扩展和修改. 在上一讲当中我做了个简单的微信文本消息回显应用,当时是以微信明文方式实现的,其实微信推荐的是消息应该加密传输以增加安全性,所以这讲说说微信消息的加解密. 在微信的帮助页面上可以下载微信消息加解密的例程,可惜的是没有Delphi语言的示例,网上搜索一番,没有人贡献出写好的Delphi版的微信加解密算法单元,好在有官方示例的C#版的,那就…
示例代码已经放出!请移步使用delphi+intraweb进行微信开发1~4代码示例进行下载,虽为示例代码但是是从我项目中移出来的,封装很完备适于自行扩展和修改. iw14.0.50来了,在新的版本中最吸引我的就是增加了完善的httphandler功能:终于可以直接在地址栏输入url打开iw功能页面了:可以自由使用EasyUI等js框架了:显示模式对话框也不再七绕八绕惹人烦了:呵呵,我感觉iw第一次接近主流web开发工具了! 兴奋过了,来尝试一下吧.其实iw的坑还是挺多的,虽然已经接近主流了,但…
真实业务场景的考虑 按照支付宝或者微信支付的开发手册的说法,一个标准的客户端接入支付业务模型应该是这样的,我忽略时序图,只用文字描述: 用户登录客户端,选择商品,然后点击客户端支付. 客户端收集商品信息,然后调用自己业务平台的预付款接口. 业务平台根据客户端提交的商品信息,生成自己的订单号等内容,并按照第三方支付的要求对订单信息进行拼装组合,并编码和签名. 业务平台返回签名后的订单信息给客户端. 客户端根据这个签名信息,呼出客户端的第三方支付系统,完成支付. 1)准备工作: 支付到指定的商家(一…
delphi XE5下安卓开发技巧 一.手机快捷方式显示中文名称 project->options->Version Info-label(改成需要显示的中文名即可),但是需要安装到安卓手机才可以(IOS的没有试过) 二.使用Sqllite存储中文 SqlLite中,字段类型要设置为nvarchar,保存时,有两种方式 1)用Post时,对中文的字段要进行UTF8转换 先用一个string变量转换一下(不转换的话Win32编译没有问题,Android编译时出错) str_temp:=UTF8E…
参考博客:http://www.cnblogs.com/pchmonster/archive/2011/12/14/2287686.html 其中的所有代码均在Delphi7下测试通过. Delphi 4,5,6,7中有字符串类型包括了: 短字符串(Short String) 长字符串(Long String) 宽字符串(Wide String) 零结尾字符串(Null-Terminated String).PChar和字符数组 1.短字符串(Short String) 固定长度,最大字符数个数…