Я пытаюсь воспроизвести следующий оператор на C#. Как показывает процедура, packlength - это строка, упакованная в соответствии с форматом '! L', которая представляет собой длинное значение (в сетевом порядке байтов - большой конец).Python's Struct.Pack в C#
packlength=struct.pack('!l', len(packetdata)+10)
я попытался следующее:
using (MemoryStream stream = new MemoryStream()) {
using (BinaryWriter writer = new BinaryWriter(stream)) {
writer.Write ((long)(packetData.Length+10));
}
}
ли процедура правильно? Если да, как мне получить доступ к приведенной «строке» из потока памяти?
@DavidHeffernan: Да, вы правы –