Имя: Пароль:
1C
1С v8
строка base64 после записи в файл
0 Rassvetniy
 
23.06.17
00:20
Приветствую.
Подскажите чего не восстанавливает двоичные данные после того как строка base64 была записана в файл?
вот пример записывал и в эксель и в обычный текстовой
ДД = новый двоичныеДанные("C:\katalog\temp.png");
     текст64 =  Base64Строка(ДД);
     сообщить(стрДлина(текст64));
    
     Эксел = новый COMОбъект("Excel.Application");
    Эксел.workbooks.open("C:\katalog\katalog.xlsx");
    //Эксел.Visible = истина;
    тмп =  Эксел.workbooks(1).sheets(1).cells(1,4).value;
    тДок =  новый ТекстовыйДокумент;
      тДок.прочитать("C:\katalog\b64.txt");
       тСтр= "";
      количествоСтрок = ТДок.КоличествоСтрок();
    Для сч = 1 по количествоСтрок цикл
        
        тСтр = тСтр + тДок.получитьСтроку(сч);
        конецЦикла;

      сообщить(стрДлина(тСтр));
      сообщить(стрДлина(тмп));

    если сокрЛП(текст64) <> сокрЛП(тСтр) тогда
        сообщить("не равно");
    иначе
        сообщить ("равно");
    конецЕсли;
длинна строк различная исходная 236902 из текстового файла читает 229724 из эксл вообще всего 32767
1 Rassvetniy
 
23.06.17
00:26
в текстовой документ пишу таким образом:

текстДок = новый ТекстовыйДокумент;
     текстДок.ДобавитьСтроку(картинка64);
     текстДок.записать("C:\katalog\b64.txt");
2 H A D G E H O G s
 
23.06.17
00:33
Убирай переносы строк.
3 H A D G E H O G s
 
23.06.17
00:33
Передавай пириветы разработчикам за такие сюрпризы.
4 H A D G E H O G s
 
23.06.17
00:35
5 Rassvetniy
 
23.06.17
01:21
так кажется я чего то был не досмотрел... хоть длинна строк и разная но из строки в текстовом файле картинку восстанавливает все восстанавливает
кстати попробовал конструкцию:
тмпСтр = стрЗаменить(картинка64, символы.ВК, "");
    тмпСтр1 = стрЗаменить(тмпСтр, символы.ПС, "");
длинна строки такой же осталась т.е. ничего и не удаляет

длинна строки если писать в эксель гораздо меньше, подозреваю что есть ограничение на объем данных которые можно в ячейку записать
6 Rassvetniy
 
23.06.17
01:27
именно так и есть ) кол-во знаков в ячейке 32 767