КодировкаФайла (БСП)

Автор: 1С
ОбщийМодуль.РаботаСФайлами
БСП

Кодировка файла. Возвращает кодировку файла.

// Возвращает кодировку файла.
//
// Параметры:
//  ПрисоединенныйФайл - ОпределяемыйТип.ПрисоединенныеФайлы - Файл, кодировку которого
//                                                             необходимо определить.
//  Расширение         - Строка - Расширение файла.
//
// Возвращаемое значение:
//  Кодировка - Строка - Кодировка файла.
//
Функция КодировкаФайла(ПрисоединенныйФайл, Расширение = "") Экспорт
	
	Кодировка = РаботаСФайламиСлужебный.ПолучитьКодировкуВерсииФайла(ПрисоединенныйФайл);
	Если Не ЗначениеЗаполнено(Кодировка) Тогда
		
		ДвоичныеДанные = ДвоичныеДанныеФайла(ПрисоединенныйФайл, Ложь);
		Если ДвоичныеДанные <> Неопределено Тогда
		
			Кодировка = КодировкаИзДвоичныхДанных(ДвоичныеДанные);
			Если Не ЗначениеЗаполнено(Кодировка) Тогда
				Если СтрЗаканчиваетсяНа(НРег(Расширение), "xml") Тогда
					Кодировка = КодировкаИзОбъявленияXML(ДвоичныеДанные);
				Иначе
					Кодировка = КодировкаИзСоответствияАлфавиту(ДвоичныеДанные);
				КонецЕсли;
				
				Если НРег(Кодировка) = "utf-8" Тогда
					Кодировка = НРег(Кодировка) + "_WithoutBOM";
				КонецЕсли;
				
			КонецЕсли;
			
		КонецЕсли;
		
	КонецЕсли;
	
	Возврат Кодировка;
	
КонецФункции

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

ПолучитьКодировкуВерсииФайла (БСП)

ЗаписатьКодировкуВерсииФайла (БСП)

КодировкаФайловПрограммыРезервногоКопированияИБ (БСП)

ЗаписатьКодировкуВерсииФайлаИИзвлеченныйТекст (БСП)

ИзвлечьТекстИзТекстовогоФайла (БСП)

КонтрольнаяСуммаФайла (БСП)

СертификатВКодировкеDER (БСП)

Кодировки (БСП)

Запись текста без BOM

Обновлятор-1С: групповое (пакетное) обновление и обслуживание всех баз за один раз