Преобразуйте шестнадцатеричное значение "2c0f19d10da4e92896faf7a92ce26f94d2fe91acdc2a69730731613f7c094a36" в десятичное с использованием функции fromRadix () NiFi - PullRequest
0 голосов
/ 23 января 2020

Я пытаюсь преобразовать шестнадцатеричное значение (входящее в состав содержимого потокового файла) 2c0f19d10da4e92896faf7a92ce26f94d2fe91acdc2a69730731613f7c094a36 с использованием EL из fromRadix () в процессоре UpdateRecord. Ниже приведен код, который я использовал

${field.value:isEmpty():not():ifElse('${field.value:fromRadix(16)}','${literal("")}')}

Но я получаю ошибку "приведет к ошибке: для ввода String" 2c0f19d10da4e92896faf7a92ce26f94d2fe91acdc2a69730731613f7c094a36 *

I 1012 * с приведенным ниже кодом, он работает нормально.

def data1 = '2c0f19d10da4e92896faf7a92ce26f94d2fe91acdc2a69730731613f7c094a36'
BigInteger x = new BigInteger(data1,16)
println "original output: " + x

Output is coming as
original output: 19928446223359820201840237302010524452213876686816802601399388669528806869558

Хотелось бы узнать, что не так с моим кодом процессора UpdateRecord с использованием fromRadix (16)

...