Имя: Пароль:
1C
1С v8
Как получить значение из файла с двоичными данными?
0 shulz
 
07.04.15
21:02
Доброго дня! Имеется Платформа 8.3, управляемые формы, внешняя обработка.

Имеется файл, сохраненный методом ЗначениеВФайл. Требуется выполнить код ЗначениеВРеквизитФормы(ЗначениеИзФайла(ИмяВременногоФайла),"Объект").
Но при помещении во временное хранилище вышеуказанного файла, его преобразуем в двоичные данные ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ИмяФайла),УникальныйИдентификатор). Но при получении из временного хранилища ФайлИмпорта = ПолучитьИзВременногоХранилища(АдресФайла) мы конечно же получаем получаем файл с двоичными данными. Как следствие ЗначениеИзФайла(ИмяВременногоФайла) не работает, т.е. метод не понимает двоичные данные. Подскажите, пожалуйста, как быть-то?

Фрагмент кода

//*************************
&НаКлиенте
Процедура ВосстановитьНастройки(Команда)
    
    ИмяФайла = СформироватьИмяФайла(РежимДиалогаВыбораФайла.Открытие,"Восстановить из файла");
    
    Если ПустаяСтрока(ИмяФайла) тогда
        Возврат
    КонецЕсли;
    
    ФайлНаДиске = Новый Файл(ИмяФайла);
    
    Если НЕ ПроверитьСуществованиеФайла(ИмяФайла) Тогда
        
        Возврат
        
    КонецЕсли;
    
    АдресФайла = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ФайлНаДиске),УникальныйИдентификатор);
        
    ВосстановитьНастройкиНаСервере();
    
КонецПроцедуры

&НаСервере
Процедура ВосстановитьНастройкиНаСервере()
    
    ФайлИмпорта = ПолучитьИзВременногоХранилища(АдресФайла);
        
    ИмяВременногоФайла = ПолучитьИмяВременногоФайла("dat");

    ФайлИмпорта.Записать(ИмяВременногоФайла);

        //Наверно где-то здесь я что-то не дописал

    ЗначениеВРеквизитФормы(ЗначениеИзФайла(ИмяВременногоФайла),"Объект")

КонецПроцедуры
//************************
1 ДенисЧ
 
07.04.15
21:07
Сохранить в файл и из него читать.
Спасибо за вынимания
2 shulz
 
07.04.15
21:19
(1) Файл уже записан/сохранен во временном файле
ФайлИмпорта.Записать(ИмяВременногоФайла);

В том-то и вопрос, как теперь к нему применить

ЗначениеИзФайла(ИмяВременногоФайла)?

ЗначениеИзФайла не понимает двоичных данных
3 ДенисЧ
 
07.04.15
21:23
"ЗначениеИзФайла не понимает двоичных данных"
Бред. Поседевшей самки лошади.
Если ты ДД сохранил в файл, то у тебя есть файл. А не ДД.
4 shulz
 
07.04.15
21:40
(3) Я уж не знаю как выглядит бред лошади...))) У меня есть файл, в который записаны двоичные данные, есть путь к нему "ИмяВременногоФайла". ЗначениеИзФайла(ИмяВременногоФайла) не работает, т.к. в файл записаны ДД. Вопрос: как преобразовать/перезаписать этот файл, чтобы он был таким, каким был до
АдресФайла = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ФайлНаДиске),УникальныйИдентификатор);
(ФайлНаДиске - файл сохраненный методом ЗначениеВФайл)
5 shulz
 
07.04.15
21:47
(3)Я может что-то не догоняю, подскажи, что в коде я написал неправильно?
6 DrShad
 
07.04.15
23:44
(4) ты не поверишь, но все файлы это двоичные данные
7 Fram
 
08.04.15
00:33
а открыть нотпадом ФайлНаДиске и ИмяВременногоФайла и сравнить хотя бы глазами пробовал?
8 shulz
 
10.04.15
12:39
В последний раз на форуме каком-то писал лет 6 назад... Жаль конечно, но создается какое-то нехорошее чувство - что вместо того, чтобы подсказать, начинается как всегда на форумах "ты не поверишь, но все файлы это двоичные данные", "сравнить хотя бы глазами","Бред. Поседевшей самки лошади. "... и как будто хотят показать свое превосходство, самоутвердится на этом, что обратившийся за помощью просто "ничего не знающий лох". Если я чего-то не знаю, поэтому я обращаюсь за помощью. В данном случае я хотел просто узнать, в каком месте в коде есть ошибка, но к сожалению ответа не получил. Всем спасибо, даже пожалел, что обратился тут.
9 H A D G E H O G s
 
10.04.15
12:55
(8) Приходите еще.