如何截取BLOB字段的前几个字节

如何截取BLOB字段的前几个字节,第1张

这不是mysql截取的,是php输出的时候截取,echo mb_substr($rs['title'],0,17,'gb2312') 这句的意思是截取17个中文字符的,编码为gb2312,编码自行修改。

这需要先看看单片机是怎么处理后发出来的。如果是把这3位16进制数每一位已经转成了ASCII表示(编码了,比如0x1AC转成了字符串“1AC”),那么这12bits就不是15bytes,而是3bytes了。这种情况用“%3x”扫描字符串就行了。

15字节还是3字节,像这样的情况,我在一个台湾的PLC的手册里(不点名了,免得麻烦)就看到过他们写乱了。也就是说他们有时候说的“字节”不是串口或网络收到的“字节”,而是PLC寄存器里面的字节。比如某寄存器里面数值是0x3A,发送的时候就不是这一个字节了,而是ASCII编码后的字符串“3A”,这样就是两个字节了。

前面是ASCII模式,便于查看。还有一种就是二进制模式,便于处理,也节省资源。

就是把数组、结构体之类的强制类型转换成字符串发回来,接收后根据类型再强制转回去就行了。

即使是用二进制模式,也很可能是用两个字节表示的12位,最高4位全0,这样把收到的字符串强制转成U16数组就行了(或者用“从平化字符串还原”,能设置字节序选项和是否包含数组或字符串大小选项)。

如果真是12位12位的拼成了8位的整数倍发过来,那就乖乖的移位吧,如图。

在Excel中使用比较长的字符串时,可能会遇到需要提取其中某一部分字符串的情况,这时就要用到截取字符串函数了,当然,截取字符串函数有很多

本文主要讲述了其中的一个函数—— RIGHTB函数 。它的作用是从字符串的最右边开始,截取特定字节数的字符。

RIGHTB函数功能

从最右边起提取指定字节数的字符

RIGHTB函数语法

翻译白话格式:

参数说明

Text:是包含要提取字符的文本字符串

Num_bytes指定要由LEFT所提取的字符数必须大于或等于0

注意事项:

1Num_bytes  按字节指定要由RIGHTB所提取的字符数

RIGHTB函数使用方法实例

示例1: 经典用法

你学会了吗?

谢谢大家的观看,我们下一期再见,如果有什么问题欢迎评论区留言或私信我们

想学习更多的函数知识,欢迎关注转发


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/yw/13410080.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-30
下一篇 2023-07-30

发表评论

登录后才能评论

评论列表(0条)

保存