|
Можно-ли сохранить текстовый документ без BOM записи? |
☑ |
0
lanc2233
01.10.13
✎
11:45
|
Текст = Новый ТекстовыйДокумент;
Текст.ДобавитьСтроку("ххх");
Текст.Записать(ИмяФайла, КодировкаТекста.UTF8);
При записи вставляет в файл первые три символа с обозначением кодировки (BOM). Можно как-то сохранить без нее, или убрать ее?
|
|
1
Torquader
02.10.13
✎
00:49
|
Писать не через текстовый документ, или ставить кодировку Win-1251 и собирать UTF-8 вручную.
|
|
2
ДенисЧ
02.10.13
✎
01:19
|
ютф без бома? Не, сынок, это фантастика...
|
|
3
oleg_km
02.10.13
✎
10:05
|
я убираю, используя ADODB.Stream. Загоняю файл в массив, отрезаю первые символы. Можно сделать для больших файлов, тогда нужно перегонять порцайками, но мне пока не нужно
|
|
4
Torquader
03.10.13
✎
00:14
|
Scripting.FileSystemObject и его объект TextStream пишет побайтово - заставить писать Utf-8 без проблем, только нужно "прокладку" на VbScript нарисовать, чтобы можно было использовать однобайтовые версии символов.
|
|
5
Asmody
03.10.13
✎
00:25
|
|
|
6
Torquader
03.10.13
✎
00:36
|
(5) По сути - создать пустой файл и его же дописать.
Это называется "костыль на костыле".
|
|
7
Asmody
03.10.13
✎
00:40
|
(6) это называется "прочитай еще раз". Нужно просто указать другую кодировку при записи файла
|
|
8
Torquader
03.10.13
✎
00:50
|
(7) Другая кодировка - это не совсем то - при записи мы получим не тот набор символов.
Там изначально создаётся пустой файл (какая при этом кодировка - неважно - главное, что длина файла 0).
Потом мы его дописываем уже в нашей кодировке.
|
|
9
Asmody
03.10.13
✎
00:56
|
полностью соответствует utf-8 в одно- и двухбайтовых символах. Для кириллицы некритично
|
|