gpt4 book ai didi

dart - 将十六进制字符串列表转换为十六进制列表

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

我需要转换以下字符串列表:

[00, 02, F0, 12, 04, 00, 00, 05, 03, 01]
进入
[0x00, 0x02, 0xF0, 0x12, 0x04, 0x00, 0x00, 0x05, 0x03, 0x01]
我该如何实现?

最佳答案

我对您真正想要的东西感到困惑,但这是您可以执行的一些操作的示例:

void main() {
// List of strings
final input = ['00', '02', 'F0', '12', '04', '00', '00', '05', '03', '01'];

// List of ints
final output = input.map((e) => int.parse(e, radix: 16)).toList();

// Print list of ints in radix 10
print(output); // [0, 2, 240, 18, 4, 0, 0, 5, 3, 1]

// Print list of ints as hex strings
print(output.map(toHexString).toList());
// [0x00, 0x02, 0xf0, 0x12, 0x04, 0x00, 0x00, 0x05, 0x03, 0x01]
}

String toHexString(int number) =>
'0x${number.toRadixString(16).padLeft(2, '0')}';
如果您的字符串实际上以“0x”开头,则可以执行以下操作:
void main() {
// List of strings
final input = ['0x00', '0x02', '0xF0', '0x12', '0x04', '0x00', '0x00', '0x05', '0x03', '0x01'];

// List of ints
final output = input.map((e) => int.parse(e.replaceFirst('0x', ''), radix: 16)).toList();

// Print list of ints in radix 10
print(output); // [0, 2, 240, 18, 4, 0, 0, 5, 3, 1]

// Print list of ints as hex strings
print(output.map(toHexString).toList());
// [0x00, 0x02, 0xf0, 0x12, 0x04, 0x00, 0x00, 0x05, 0x03, 0x01]
}

String toHexString(int number) =>
'0x${number.toRadixString(16).padLeft(2, '0')}';

关于dart - 将十六进制字符串列表转换为十六进制列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63069603/

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