Я как-то застрял со следующей проблемой:Biztalk FlatFile заполнить узел с NULL значениями
У меня есть схема, где мне нужно подсчитать длину первой части сообщения потому что имеет динамическую длину, и в конце заполните его с помощью NULL, пока не достигнет 256 байтовых блоков.
Так я думал, что я мог рассчитывать длину входной строки из первой части, а затем просто заполнить его с помощью функции, как это:
public string GetHexNulls(string val)
{
var b = new StringBuilder();
for (int i = 0; i < 256 - val.Length; i++)
{
b.Append(0.ToString("X"));
}
return b.ToString();
}
Я не могу управлять, чтобы получить NULLs (HEX 0х00), но нормальные нулевые строки (HEX 0x30). Понятно, в чем моя проблема?
Я не уверен, как достичь этого - или более общего, как распечатать значения HEX для текстового файла, которые признаются значениями HEX. Думаю, все это касается кодирования?
Ну, имейте в виду, «шестигранной» часть не имеет никакого значения. Null - char 0 независимо от того, как это выражено. Вы уверены, что не можете использовать Pad Character = 0x00? –
Да, обычно я использовал бы пэд-чар, поскольку это работает как ожидалось в позиционном плоском файле, но в этом случае мне нужен динамический размер для узла. Как это сделать? – Megalomaniac
Но «заполнить до конца» означает фиксированную ширину? –