字节
原始字节流类型,用于底层内存、文件与网络 I/O。
xuantie
设 数据: 字节你可以……
- 在声明与外函数签名中作类型注解:
xuantie
外 函 读原始(路径: 字): 字节- 配合字符串做字节级访问——
.字节(i)取第i个字节值(0–255 的整),.字节数取字节长度:
xuantie
示("Hi".字节(0)) // 72
示("你好".字节数) // 6- 建
字节(容量)缓冲(容量不够自动扩容)——.追加(字节值)逐个写入,字节到字符串(字节)按 UTF-8 严格校验后转回 字;非法字节或非字节输入明确报错退出(不静默产出坏字符串):
xuantie
设 缓冲 = 字节(16)
缓冲.追加(231) // 0xE7
缓冲.追加(142)
缓冲.追加(132) // 至此为 "玄" 的 UTF-8 三字节
示(字节到字符串(缓冲)) // 玄- 字符串与字节集互转——
到字节集(字符串)拷贝字符串的 UTF-8 字节建字节集;反向用上面的字节到字符串。
字节集方法
下标一律按字节(与字符串方法的字符下标不同)。截取/寻找/倒找/替换/分割 与字符串同名方法同形,按接收者类型自动分派。
| 调用 | 返回 | 说明 |
|---|---|---|
b.长度 | 整 | 字节数 |
b.截取(起, 止?) | 字节集 | 字节下标,左闭右开;止缺省到尾 |
b.寻找(子字节集, 起始?) | 整 | 首次出现的字节位置,找不到 -1 |
b.倒找(子字节集) | 整 | 最后出现的字节位置,找不到 -1 |
b.替换(旧, 新) | 字节集 | 替换全部出现(旧为空集时原样返回) |
b.取字节(位置) | 整 | 0-255;越界 -1 |
b.写字节(位置, 值) | 布尔 | 就地写;越界或值域外返 假 |
b.到十六进制() | 字 | 大写连排(如 "E78E84";与字符串的 \XX 转义形态不同) |
b.分割(分隔字节值) | 数组 | 按单字节值(0-255)切分为字节集数组,保留空段 |
注意
- 本词是保留字:不能用作变量名、函数名、参数名等标识符(完整规则与清单见 词法与基础语法)。
字节数按字节计,不是字符数——UTF-8 中一个汉字占 3 字节;按字符处理请用截取(字符索引)。.字节(i)返回的是整字节值,不是字节类型,别混淆。- 字节集是二进制数据的可靠通路:全部方法按长度前缀工作,内嵌
0x00不影响;字符串的&拼接/==/示等 C 字符串语义通道遇 NUL 会截断,二进制解析(wav/图片/网络包)请用到字节集进入本层,处理完按需字节到字符串转出(会做 UTF-8 严格校验,非文本字节会明确报错)。