LINUX.ORG.RU

tcl кодировка

 ,


0

1

В bash запись в файл шестнадцатеричных чисел происходит без искажений.

[gorog@localhost tcl]$ echo -e "\x00\xAB" > med.txt
[gorog@localhost tcl]$ xxd med.txt
0000000: 00ab 0a                                  ...
[gorog@localhost tcl]$  

В tcl запись тех же чисел в файл приводит к появлению дополнительного шестнадцатеричного числа \xc2. Почему?

[gorog@localhost tcl]$ xxd gol.txt
0000000: 00c2 ab0a                                ....
Unicode code point U+00AB, character «, UTF-8 (hex.) c2 ab

сама программа в tcl

    set gor [open gol.txt w+]
    set posil "\x00\xAB"
    puts $gor $posil
    close $gor

версия tcl

[gorog@localhost ~]$ tclsh
% puts $tcl_version
8.5
% 

шестнадцатеричное число представлял в виде

set posil "[format %x 0][format %x 171]"
все равно не получается записать шестнадцатеричное число в файл


Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.