Convert string to u128

For the other direction, you can use the format!() macro (Rust Playground):

fn main() {
    let diff_str = "0x000fffffffffffffffffffffffffffff".to_string();
    let diff_digits = diff_str.strip_prefix("0x").unwrap();
    let diff = u128::from_str_radix(diff_digits, 16).unwrap();
    let diff_bytes = diff.to_le_bytes();

    let de_diff_bytes = diff_bytes;
    let de_diff = u128::from_le_bytes(de_diff_bytes);
    let de_diff_str = format!("0x{de_diff:032x}");

    assert_eq!(diff_str, de_diff_str);
}
2 Likes