Подтвердить что ты не робот

Что такое двоичный нулевой символ?

У меня есть требование создать файл журнала sysDesk. В этом требовании я должен создать XML файл, который в определенных местах между элементами содержит двоичный нулевой символ.

Может ли кто-нибудь объяснить мне, во-первых, что такое двоичный нулевой символ и как я могу записать его в текстовый файл?

4b9b3361

Ответ 1

Я подозреваю, что это означает Unicode U + 0000. Однако не допустимый символ в файле XML... вы должны увидеть, можете ли вы получить очень четкую спецификацию формата файла для работы что на самом деле требуется. Файлы примеров также будут полезны:)

Комментарии в настоящее время терпят неудачу, поэтому, чтобы ответить на пару других ответов:

  • Это не символ окончания строки в С#, так как С# не использует строки с завершающим нулем. Фактически, все строки .NET имеют нуль-конец для взаимодействия, но, что более важно, длина сохраняется независимо. В частности, строка С# может полностью включать нулевой символ без его завершения:

    string embeddedNull = "a\0b";
    Console.WriteLine(embeddedNull.Length); // Prints 3
    
  • Метод, заданный rwmnau для получения нулевого символа или строки, очень неэффективен для чего-то простого. Лучше будет:

    string justNullString = "\0";
    char justNullChar = '\0';
    

Ответ 2

Двоичный нулевой символ - это просто char с целым числом /ASCII значением 0.

Вы можете создать нулевой символ с Convert.ToChar(0) или более распространенным, более узнаваемым '\0'.

Ответ 3

Двоичный символ NULL - это тот, что все нули (0x00 в Hex). Вы можете написать:

System.Text.Encoding.ASCII.GetChars(new byte[] {00});

чтобы получить его на С#.

Ответ 4

Нулевой символ - это специальный символ, который представлен U + 0000 (закодированный всеми нулевыми битами). Нулевой символ представлен в С# с помощью escape-последовательности \0, как в "This string ends with a null character.\0".