Мне нужно каким-то образом преобразовать отдельные символы в RPGLE в целые числа - кто-нибудь знает хороший способ? Он должен работать на все возможные входы и идеально обеспечивать различное целое для каждого входа - по крайней мере, он должен обеспечивать другое значение для всех общих входов. Мне все равно, что такое целые числа. На C-подобном языке я бы взял значение ASCII или подобное - в идеале я хочу что-то эквивалентное этому.Как я могу получить значение EBCDIC для символа в RPGLE?
Пример, чтобы понять, как я хочу работать:
characterData = "Hello";
for i = 1 to %len(string);
singleCharacter = %subst(characterData:i:1);
number = myFunction(singleCharacter);
dsply 'The value of ' + singleCharacter + ' is ' + %char(number);
endfor;
Это напечатает
The value of H is 72 The value of e is 101 The value of l is 108 The value of l is 108 The value of o is 111
, но обратите внимание, что я на самом деле не волнует, что эти цифры, так что они для каждого входа различны.
Все это помогает создать хеш-функцию для символьных данных в RPGLE, поэтому, если вы знаете хороший способ сделать это, это будет лучшим ответом.
Этот хэш будет использоваться для шифрования? В RPG есть функции шифрования, которые сделают это для вас. Я использовал функции шифрования. Если это так, я могу разместить здесь свое тестовое приложение, чтобы вы могли посмотреть. –