将 ASCII 转换为十六进制
Convert ASCII to hex
我想将 ASCII 值转换为十六进制。在Java中,我经常使用函数:
private static String asciiToHex(String asciiStr) {
char[] chars = asciiStr.toCharArray();
StringBuilder hex = new StringBuilder();
for (char ch : chars) {
hex.append(Integer.toHexString((int) ch));
}
return hex.toString();
}
Dart 中是否有任何方法可以像 Java 中的 Integer.toHexString
那样转换为十六进制值?
示例:
youtube.com
输出
796F75747562652E636F6D
尝试
String hexToAscii(String hexString) => List.generate(
hexString.length ~/ 2,
(i) => String.fromCharCode(
int.parse(hexString.substring(i * 2, (i * 2) + 2), radix: 16)),
).join();
Integer.toHexString
的等价物是对整数值调用 .toRadixString(16)。
asciiToHex
函数可以像这样翻译成 dart:
String asciiToHex(String asciiStr) {
List<int> chars = asciiStr.codeUnits;
StringBuffer hex = StringBuffer();
for (int ch in chars) {
hex.write(ch.toRadixString(16).padLeft(2, '0'));
}
return hex.toString();
}
我想将 ASCII 值转换为十六进制。在Java中,我经常使用函数:
private static String asciiToHex(String asciiStr) {
char[] chars = asciiStr.toCharArray();
StringBuilder hex = new StringBuilder();
for (char ch : chars) {
hex.append(Integer.toHexString((int) ch));
}
return hex.toString();
}
Dart 中是否有任何方法可以像 Java 中的 Integer.toHexString
那样转换为十六进制值?
示例:
youtube.com
输出
796F75747562652E636F6D
尝试
String hexToAscii(String hexString) => List.generate(
hexString.length ~/ 2,
(i) => String.fromCharCode(
int.parse(hexString.substring(i * 2, (i * 2) + 2), radix: 16)),
).join();
Integer.toHexString
的等价物是对整数值调用 .toRadixString(16)。
asciiToHex
函数可以像这样翻译成 dart:
String asciiToHex(String asciiStr) {
List<int> chars = asciiStr.codeUnits;
StringBuffer hex = StringBuffer();
for (int ch in chars) {
hex.write(ch.toRadixString(16).padLeft(2, '0'));
}
return hex.toString();
}