Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

ПолучитьДвоичныеДанные(ФайлВФорматеXLS), Как обратно получить данные в файл?

ПолучитьДвоичныеДанные(ФайлВФорматеXLS), Как обратно получить данные в файл?
Я
   pvase
 
09.07.19 - 16:36
Полный текст такой:
    ФайлВФорматеXLS = ПолучитьИмяВременногоФайла();
    Отчет.Записать(ФайлВФорматеXLS, ТипФайлаТабличногоДокумента.XLS);
    СписокФайловВложений.Добавить(Новый Структура("Хранилище, ИмяФайла, Наименование", ПолучитьДвоичныеДанные(ФайлВФорматеXLS), (ИмяФайлаВложения + ".XLS"), ИмяФайлаВложения));
После чего идет попытка получить обратно файл:
Для каждого ЭлементСписка Из СписокФайловВложений Цикл
                    
                    
                    ЗначениеСтруктурыВозврата = Неопределено;
                    ЭлементСписка.Значение.Свойство("Хранилище", ЗначениеСтруктурыВозврата);
                    ДанныеВложения = Новый ХранилищеЗначения(ЗначениеСтруктурыВозврата);
                    ДвоичныеДанные = ДанныеВложения.Получить();
                    Если ТипЗнч(ДвоичныеДанные) = Тип("ДвоичныеДанные") Тогда
                        ФайлВложения = КаталогВременныхФайлов()+ИмяФайла;
                        ЗначениеВФайл(ФайлВложения, ДвоичныеДанные);
                        
                    КонецЕсли;

В итоге содержимое ФайлВложения - совсем не то, что было в ФайлВФорматеXLS. Подскажите что здесь не так? Спасибо.
 
 
   pvase
 
1 - 09.07.19 - 16:38
Если смотреть "ФайлВФорматеXLS" то там видно что внутри Excel, а если посмотреть файл ФайлВложения - то внутри какой то внутри содержимое напоминает что-то зашифрованное, но никак не Excel.
   pvase
 
2 - 09.07.19 - 16:57
Итого:
        ФайлВФорматеXLS2 = ПолучитьИмяВременногоФайла();
        Отчет.Записать(ФайлВФорматеXLS2, ТипФайлаТабличногоДокумента.XLS);
        ФайлВФорматеXLS2ДвоичныеДанные = ПолучитьДвоичныеДанные(ФайлВФорматеXLS2);
        Файл2 = ПолучитьИмяВременногоФайла()+".xls";
        ЗначениеВФайл(Файл2, ФайлВФорматеXLS2ДвоичныеДанные);

В итоге ФайлВФорматеXLS2 не равен с Файл2? хотя двоичные данные равны. Что-то мне кажется что ошибка в: ЗначениеВФайл(Файл2, ФайлВФорматеXLS2ДвоичныеДанные).
   Вафель
 
3 - 09.07.19 - 16:58
двоичные данные в файл лучше сохранять методом
ДвоичныеДанные.Записать(ИмяФайла)
   pvase
 
4 - 09.07.19 - 17:07
(3) Спасибо, то, что нужно.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует