Как читать и записывать двоичные числа в и из файлов в компьютерной алгебре Magma

Чтение: я нашел способ читать двоичные файлы как число. Это не красиво, но работает.

function FileRead(F)
    bindata := ReadBinary(F);
    akk := 0;
    for i in [1..#bindata] do
        akk := akk * 2^8 + bindata[i];
    end for;
    return akk;
end function;

printf "%h", FileRead("outfile");

Запись: Единственный способ создания байтовых строк - это использование BinaryString который требует символьную строку в качестве аргумента. Но к сожалению CodeToString не работает для NULL символов. Так что следующее не работает.

WriteBinary("outfile", BinaryString(CodeToString(0xCA) cat CodeToString(0)): Overwrite:=true); 

0 ответов

Другие вопросы по тегам