gpt4 book ai didi

encoding - 将 ubyte[] 转换为 D 中的字符串

转载 作者:行者123 更新时间:2023-12-04 20:36:35 29 4
gpt4 key购买 nike

我从不受信任的来源接收 ubyte[] 并且需要将其转换为 utf-8 编码字符串。我如何转换它并检查我得到的字节是否是有效的 utf-8 数据?
phobos 中似乎没有直接执行此操作的函数(即采用 ubyte[] 或 ubyte 范围并将其转换为字符串或字符范围)。

最佳答案

std.utf.validate ?

还有这样的事情?

import std.stdio;
import std.utf;

void main()
{
ubyte[] bytes = cast(ubyte[])"собака";
writeln("bytes: ", bytes);

string str = cast(string)bytes;
writeln("string: ", str);

validate(str);

writeln("valid");
}

应用输出:
bytes: [209, 129, 208, 190, 208, 177, 208, 176, 208, 186, 208, 176]
string: собака
valid

关于encoding - 将 ubyte[] 转换为 D 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34401744/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com