Здравствуйте, lva17, Вы писали:
L>Как сохранить текст в файл в кодировке UTF-8 без ведущих маркерных байтов?
L>чтобы сразу с первого байта начинались символы текста.
L>Классы TextWriter при указании кодировки прописывают маркеры, т.к. это положено по стандарту.
L>Но иногда получатель таких файлов понимает их только при отсутствии маркеров.
Попробуй так:
string fileContent = "Содержимое файла";
byte[] buffer = System.Text.ASCIIEncoding.UTF8.GetBytes(fileContent);
System.IO.File.WriteAllBytes("ИмяФайла.txt", buffer);
Здравствуйте, lva17, Вы писали:
L>Как сохранить текст в файл в кодировке UTF-8 без ведущих маркерных байтов?
L>чтобы сразу с первого байта начинались символы текста.
L>Классы TextWriter при указании кодировки прописывают маркеры, т.к. это положено по стандарту.
L>Но иногда получатель таких файлов понимает их только при отсутствии маркеров.
How to suppress the BOM while using XMLTextWriter?
Здравствуйте, lva17, Вы писали:
L>Классы TextWriter при указании кодировки прописывают маркеры, т.к. это положено по стандарту.
L>Но иногда получатель таких файлов понимает их только при отсутствии маркеров.
Сконструировать экземпляр кодировки самостоятельно. В частности, класс UTF8Encoding принимает в конструкторе параметр, указывающий на необходимость использования преамбулы.
TextWriter writer = new StreamWriter("test.txt", false, new UTF8Encoding(false));
writer.Write("Hello, UTF-8!");
С Уважением, Andir!
using( RSDN@Home 1.2.0 alpha rev. 743 ) { /* Работаем */ }
Здравствуйте, ZARATUSTR, Вы писали:
ZAR>Здравствуйте, lva17, Вы писали:
L>>Как сохранить текст в файл в кодировке UTF-8 без ведущих маркерных байтов?
L>>чтобы сразу с первого байта начинались символы текста.
L>>Классы TextWriter при указании кодировки прописывают маркеры, т.к. это положено по стандарту.
L>>Но иногда получатель таких файлов понимает их только при отсутствии маркеров.
ZAR>Попробуй так:
ZAR>
ZAR>string fileContent = "Содержимое файла";
ZAR>byte[] buffer = System.Text.ASCIIEncoding.UTF8.GetBytes(fileContent);
ZAR>System.IO.File.WriteAllBytes("ИмяФайла.txt", buffer);
ZAR>
Спасибо за ответ.
Проверил, метод работает.
Но он лишен гибкости использования Writer-ов.
Здравствуйте, desco, Вы писали:
D>Здравствуйте, lva17, Вы писали:
L>>Как сохранить текст в файл в кодировке UTF-8 без ведущих маркерных байтов?
L>>чтобы сразу с первого байта начинались символы текста.
L>>Классы TextWriter при указании кодировки прописывают маркеры, т.к. это положено по стандарту.
L>>Но иногда получатель таких файлов понимает их только при отсутствии маркеров.
D>How to suppress the BOM while using XMLTextWriter?
Как раз то, что надо!
Спасибо
Здравствуйте, Andir, Вы писали:
A>Здравствуйте, lva17, Вы писали:
L>>Классы TextWriter при указании кодировки прописывают маркеры, т.к. это положено по стандарту.
L>>Но иногда получатель таких файлов понимает их только при отсутствии маркеров.
A>Сконструировать экземпляр кодировки самостоятельно. В частности, класс UTF8Encoding принимает в конструкторе параметр, указывающий на необходимость использования преамбулы.
A>A>TextWriter writer = new StreamWriter("test.txt", false, new UTF8Encoding(false));
A>writer.Write("Hello, UTF-8!");
A>
A>С Уважением, Andir!
Так и сделал.
Спасибо