2010-04-26 5 views
1

У меня есть требование в Ab Initio для форматирования числа в левом выравнивании. Я не должен использовать преобразование String (поскольку строки по умолчанию выравниваются по умолчанию), так как это может вызвать проблемы совместимости в другом конце.Ab Initio - форматирование числа в левом выравнивании

Например, если мое поле имеет длину 7 байт, и я получаю только две цифры в качестве своего ввода, то эти две цифры должны входить в первые два байта моего поля (выравнивание по левому краю), а не последнее два байта.

Итак, есть ли встроенная функция в Ab Initio, которая может форматировать число влево?

ответ

3

Вы можете преобразовать его в строку и позволить ей ехать. Ab Initio автоматически преобразует строку в строку и десятичную. Кроме того, физическое представление будет одинаковым для этих двух типов.

Если вы пытаетесь использовать формат, не основанный на ascii (int, float и т. Д.), Я не думаю, что для этого есть встроенная функция, и вам, вероятно, придется сделать что-то грубое, к типу void, затем к строковому типу с использованием hex_to_string(), чтобы сохранить точные биты, а затем правую панель с пробелами.