以下是使用 Dlang 语言将 ubyte[] 类型的 result 转换为十六进制字符串和二进制字符串的代码示例:

方式 1:

import std.conv;
import std.array;

ubyte[] result = [0x12, 0xAB, 0xCD, 0xEF];
string hexString = to!string(result).array.joiner("").byChunk(2).map!(a => a[0..2].array.joiner(""))().joiner("");
writeln(hexString);

string binaryString = result.map!(x => format("%08b", x)).array.joiner("");
writeln(binaryString);

方式 2:

import std.algorithm;
import std.format;

ubyte[] result = [0x12, 0xAB, 0xCD, 0xEF];
string hexString = result.map!(x => format("%02X", x)).joiner("");
writeln(hexString);

string binaryString = result.map!(x => format("%08b", x)).array.joiner("");
writeln(binaryString);

方式 3:

ubyte[] result = [0x12, 0xAB, 0xCD, 0xEF];
string hexString = result.map!(x => format("%02x", x)).joiner("");
writeln(hexString);

string binaryString = result.map!(x => format("%08b", x)).array.joiner("");
writeln(binaryString);

你可以将上述代码复制粘贴到 Dlang 的 IDE 中,运行测试。

Dlang 将 ubyte[] 转换为十六进制和二进制字符串 - 多种方法

原文地址: https://www.cveoy.top/t/topic/omBJ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录