SQL IMAGE字段读取

摘要:
事实上,你也可以使用系统的计算器进行科学计算。

SQL IMAGE字段读取出来,需要转换成二进制字符串否则是乱码

var

stext,sTextA :String;

begin

sTextA :=ADOQuery.FieldByName('well').AsString; //功图二进制数据

for j:=1 to Length(sTextA) do
 stext:=stext+inttoHex(Ord(sTextA[j]),2);  //返回对应的ASCII码值

ord函数与chr函数

字母“A”对应的ASCII码值为65 ord('A') 65

chr(65) 'A'  

中文 转 unicode 说白了就是将单个字符,例如:“网页”的页字 用 Ord函数转成 10进制数字,再转为16进制数据。就这样。

其实,用系统的计算器,科学型计算,也可以计算出来。

//Char 类型与其编码值的转换:
var
b: Byte;
c: Char;
begin
b := Ord('A');   {返回: 65}
b := Ord(#65);   {返回: 65}
b := Ord($41);   {返回: 65}
b := Ord(#$41); {返回: 65}
b := Byte('A'); {返回: 65}
b := Byte(#65); {返回: 65}
b := Byte($41); {返回: 65}
b := Byte(#$41); {返回: 65}
c := Chr(65);    {返回: A }
c := Chr($41);   {返回: A }
c := Char(65);   {返回: A }
c := Char($41); {返回: A }
end;
--------------------------------------------------------------------------------

//WideChar 类型与其编码值的转换; 汉字的 UniCode 编码范围是: $4E00..$9FA5
var
w : Word;
c : WideChar;
ws: WideString;
s : string;
begin
{准备工作}
ws := '万一';
c := ws[1];
//ShowMessage(c); {万}
{从汉字到 UniCode 编码}
w := Ord(c);                  {返回十进制数        : 19975}
w := Word(c);                 {返回十进制数        : 19975}
s := Format('%.4x',[Ord(c)]); {返回十六进制的字符串: 4E07 }
s := IntToHex(Ord(c), 4);     {返回十六进制的字符串: 4E07 }
{从 UniCode 编码到汉字}
c := #19975;           {万}
c := #$4E07;           {万}
c := #$4e07;           {万}
c := WideChar(19975); {万}
c := WideChar($4E07); {万}
end;

中文Unicode转换 http://app.baidu.com/2unicode?keyword=unicode%E8%BD%AC

全文:http://hi.baidu.com/mit1208/item/3588c374b076433a7044234b

Delphi Unicode转中文:http://www.cnblogs.com/devcjq/articles/3747918.html

免责声明:文章转载自《SQL IMAGE字段读取》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇ORACLE 错误案例—ORA-27102: out of memory外部CSS下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

layui使用layui-excel扩展导出xlsx格式文件

layui-excel扩展导出的文件可用office打开,正常显示;直接用table带的导出功能,导出的文件用office打开显示乱码。--导出表不展示--˃78910layui.config.use(['table','form','laydate','excel'],function(){11varform=layui.form;12vartable=l...

go语言游戏服务端开发(一)——架构

本教程以Go语言为例。特别是游戏服务进程有更新上线时,稳定性还没有被线上并发验证,宕机的几率会增加,数据丢失的风险也会增加。为了减轻风险,可以考虑把数据缓存跟服务进程分离。对于轻中度游戏,游戏的通信量不会很多,没必要每个分服都有一个长连接socket网关。假设一个分服同时连接服务器的客户端有5k,一台机器的socket网关能支持5w个玩家。因此网关需要参与服...

Linux(debian7)操作基础(四)之CPU频率调整 Linux系统CPU频率调整工具使用

在Linux中,内核的开发人员定义了一组框架模型,以实现动态调整CPU频率的目的,这就是CPUFreq系统。交互式:交互式模式,直接连接到最高频率,然后CPU负载缓慢降低,导致相对较高的功耗。Interactive根据计划的CPU数量来调整频率,以节省电力。InteractiveX根据CPU负载调整CPU频率,而不会过度降低频率。用户空间:用户定义的模式。该...

AVUE 下拉 select 获取选中项的文本

底层应该不支持,其它方式应该可以,到时候看看黎大神给的方案。...

fiddler抓包+雷电模拟器 完成手机app抓包的配置

找到系统应用,点击设置,点击无线网络WLAN—˃左键常按点击已连接网络—˃修改网络鼠标左键长按在桌面找到下面这个文件之后双击打开上面证书弄完之后。可以说本机已经安装过证书了,如果你能在模拟器上找到这个证书就不用将这个证书再拉入模拟器了在模拟器中打开系统应用—˃设置—˃安全—˃从SD卡安装。找到FiddlerRoot.cer文件,按提示导入即可,注意在此过程需...

关于异常STATUS_IN_PAGE_ERROR(0xC0000006)

表示0x%p处的指令引用了位于0x%p的内存。由于0x%x的I/O错误状态,未将所需数据放入内存。设备如果读取出错,驱动程序可以返回此异常。其定义如下:////MessageId:STATUS_IN_PAGE_ERROR////MessageText:////Theinstructionat0x%preferencedmemoryat0x%p.Therequ...