helpf.pro
Регистрация
 0 
Распечатать

1С 8.x : Как изменить кодировку файла из UTF-8 в ANSI

Код 1C v 8.х
 // Перекодировка файла из кодировки UTF-8 в ANSI.
// Будет создан файл в кодировке ANSI в этом же каталоге
// с суффиксом "_ansi" .
// параметры:
// каталогФайла - Каталог где лежит файл без символа "\" на конце
// файлUTF8 - имя файла для конвертации
Функция ПерекодироватьФайлUTF8_ANSI(каталогФайла, файлUTF8)

исходныйФайл = каталогФайла + "\" + файлUTF8;
файлЧтение = Новый ЧтениеТекста(исходныйФайл,КодировкаТекста.UTF8);
txt=файлЧтение.Прочитать();
файлЧтение.Закрыть();

ФайлANSI = СтрЗаменить(файлUTF8,".","_ansi.");
результатФайл = каталогФайла + "\" + ФайлANSI;
файлЗапись = Новый ЗаписьТекста(результатФайл,КодировкаТекста.ANSI);
файлЗапись.Записать(txt);
файлЗапись.Закрыть();

Возврат ФайлANSI;
КонецФункции

// Запуск
каталогCSV = "d:\csv";
файлCSV = "export_file_.csv"; // в utf-8
файлCSV_ansi = ПерекодироватьФайлUTF8_ANSI(каталогCSV,файлCSV);
Разместил:   Версии: | 8.x |  Дата:   Прочитано: 34096
 0 
Распечатать
Возможно, вас также заинтересует
1C и Google Maps 21
была поставлена задача отображения на географической карте медицинских учреждений. После обзора предлагаемых решений был выбран сервис google. Но так же подобного рода подход будет работать и с картами сервиса yandex. Во время решения задачи было реш
Google maps : вывод точек на карту и режим панорамы 9
В отличие от яндекс карт в GMaps можно использовать панорамы - за что им большой плюс! Надеюсь в яндексе прочитают этот пост и тоже когда-нибудь это сделают! Для клиента нужно было сделать вывод объектов на карту С возможностью просмотра панора
Быстрый перенос списка баз с одного компьютера на другой 0
Для 8.1 : 1. Список баз 8.1 можно сохранять в файл.Для этого правой кнопкой мыши по корневому элементу " Информационные базы " , далее " Сохранить ссылку в файл " . 2. Получаем файл с расширением v8i , это текстовый файл в кодировке UTF-8. Ес
Выбор оптимального алгоритма для разбора строки в массив 0
Столкнулся с проблемой: ПолучитьСтрокуПоНомеру() медленно отрабатывает на входных данных 100 000 строк. Как сделать бытсрее? // Пример Defender aka LINN ВремяНачала = ТекущаяДата(); Сообщить(" Обработка начата: " + ВремяНачала); ТЗ = Новый Та
Выгрузка / Загрузка данных посредством текстовых (TXT) файлов 5
Для работы с текстовыми документами существуют три типа данных – ТекстовыйДокумент, ЗаписьТекста и ЧтениеТекста . Разница двух подходов состоит в способе загрузки документа: ТекстовыйДокумент загружает файл целиком и далее построчно обрабатывает е
Посмотреть все результаты поиска похожих
Комментарии
ZooDoc
29.04.2022 13:57Комментарий: 1
ZooDoc
Код 1C v 8.3
 

Если СтрЧислоВхождений(Текстовка, "Р")>СтрДлина(Текстовка)/3 Тогда
Поток = Новый ПотокВПамяти();
Запись = Новый ЗаписьДанных(Поток, КодировкаТекста.ANSI);
Запись.ЗаписатьСтроку(Текстовка);
Запись.Закрыть();
Поток.Перейти(0,ПозицияВПотоке.Начало);
Чтение = Новый ЧтениеДанных(Поток, КодировкаТекста.UTF8);
Текстовка = Чтение.ПрочитатьСтроку();
Чтение.Закрыть();
Поток.Закрыть();
КонецЕсли;


Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.