Имя: Пароль:
1C
1С v8
1С + UTF-8 без BOM
0 kan81
 
10.06.14
14:47
Доброго времени суток. Помогите разобраться с сохранение текстового файла в формате UTF-8 без BOM.
Платформа 8.3.4.482.
Пишу следующий код, а если открываю полученный файл в Notepad++, то кодировка вообще становиться ANSI.

    ТекстовыйФайл = Новый ТекстовыйДокумент();
    ТекстовыйФайл.ДобавитьСтроку(текст);
    ТекстовыйФайл.Записать(ИмяФайла , КодировкаТекста.UTF8);

    Данные = Новый ДвоичныеДанные(ИмяФайла);
    
    Строка64 = Base64Строка(Данные);
    Строка64 = Прав(Строка64 , СтрДлина(Строка64) - 4);
    
    ДанныеНаЗапись = Base64Значение(Строка64);
    ДанныеНаЗапись.Записать(ИмяФайла);

Что делаю не так. Что-то подобное делал на 8.1, все работало.
1 Jaap Vduul
 
10.06.14
15:01
Ну так notepad не видит utf-маркера, поэтому и говорит, что кодировка ansi.
2 Jaap Vduul
 
10.06.14
15:03
Да, кстати: у utf-8 маркер это три байта, а не четыре.
3 H A D G E H O G s
 
10.06.14
15:13
(2) Ну так base64 строка - это +25% избыточности.
4 Serginio1
 
10.06.14
15:14
А зачем тебе UTF если подойдет и US-ASCII
5 Serginio1
 
10.06.14
15:15
Прошу прощения, показалось что записываешь Base64Значение
6 Serginio1
 
10.06.14
15:17
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс