Convert an arbitrarily long hexadecimal string to a number in Dart?
You can use int.parse('001479B7', radix: 16);
https://api.dartlang.org/stable/2.4.1/dart-core/int/parse.html
so your code will look like this :
void main() { final fullString = '001479B70054DB6E001475B3'; for (int i = 0; i <= fullString.length - 8; i += 8) { final hex = fullString.substring(i, i + 8); final number = int.parse(hex, radix: 16); print(number); }}
Since my Hex string came smaller than 8 elements of Byte, I did this.
String dumpHexToString(List<int> data) { StringBuffer sb = StringBuffer(); data.forEach((f) { sb.write(f.toRadixString(16).padLeft(2, '0')); sb.write(" "); }); return sb.toString(); } String conertHexDecimal(String str1) { final fullString = str1; int number = 0; for (int i = 0; i <= fullString.length - 8; i += 8) { final hex = fullString.substring(i, i + 8); number = int.parse(hex, radix: 16); print(number); } return number.toString(); }void executarConersao(Uint8List data){String conersorHexDeVar = dumpHexToString(data); conersorHexDeVar = conersorHexDeVar .substring(3, conersorHexDeVar.length) .replaceAll(' ', '') .padLeft(8, '0'); conersorHexDeVar = conertHexDecimal(conersorHexDeVar); print('data $conersorHexDeVar');}