|   |   | 
| 
 | v7: Чтение txt файла (xml формат) | ☑ | ||
|---|---|---|---|---|
| 0
    
        Mafiozaa 19.02.21✎ 08:33 | 
        Приветствую, есть текстовый документ, содержимое = xml формату, считываю строки документа, записываю в переменную, в другой процедуре хочу вытянуть переменную с текстом и тут какие то не понятки начинаются
 //******************************************* Перем ТекстXML; Перем ЧистыйКод; Перем ПолученнаяСтрока; Перем ТЗ; Процедура ПриОткрытии() КонецПроцедуры Процедура Сформировать() Текст = СоздатьОбъект("Текст"); ТЗ = СоздатьОбъект("ТаблицаЗначений"); Текст.Открыть("C:\Users\Dmitriy\Desktop\xml.txt"); Для А = 1 По Текст.КоличествоСтрок() Цикл НоваяСтрока(); КодМаркировки = Текст.ПолучитьСтроку(А); ЧистыйКод = Сред(КодМаркировки,4,42); КонецЦикла; ВыгрузитьТабличнуюЧасть(ТЗ); КонецПроцедуры Процедура Проверка() Сообщить(ЧистыйКод); Сообщить(КодМаркировки); Сообщить(ТекстXML); КонецПроцедуры При данном коде в сообщить вижу вот так hipment> <?xml version="1.0" encoding="utf-8"?> (пустая) В цикле тоже самое, что не так? | |||
| 1
    
        Mikeware 19.02.21✎ 08:36 | 
        ДНК     | |||
| 2
    
        Guk 19.02.21✎ 08:37 | 
        да в принципе все не так...     | |||
| 3
    
        Mafiozaa 19.02.21✎ 08:40 | 
        (2) Не догоняю, в цикле пробежался по документу, записал в колонку (весь текст документа) обрезал у каждой строки лишнее, в другой процедуре
 Для А = 1 По КоличествоСтрок() Цикл Сообщить(ЧистыйКод); КонецЦикла; Вижу hipment> = колву строк | |||
| 4
    
        Mikeware 19.02.21✎ 08:43 | 
        (3) я даже если выпью - не смогу понять, что ты пытался сделать     | |||
| 5
    
        Mafiozaa 19.02.21✎ 08:44 | 
        (4) Ты можешь и не вникать, ибо вся твоя помощь сводится к вызову программиста     | |||
| 6
    
        Mikeware 19.02.21✎ 08:44 | 
        (5) это, конечно, оптимальный вариант     | |||
| 7
    
        Bigbro 19.02.21✎ 08:49 | 
        (5) пока у тебя с кодом все очень плохо чтобы по нему понять что ты хотел сделать.
 и с описанием смысла своих действий - ненамного лучше. поэтому да - телепатия дает сбои. | |||
| 8
    
        Mafiozaa 19.02.21✎ 08:51 | 
        (6) Вот видишь)))     | |||
| 9
    
        acht 19.02.21✎ 08:51 | 
        (0) Я из кода понял только, что тебя зовут Дмитрием.     | |||
| 10
    
        Mafiozaa 19.02.21✎ 08:58 | 
        (7) Хорошо, попробую еще раз, есть документ, мне нужно его считать что собственно получается, я его считываю и записываю в тз все хорошо
 Затем беру записанный текст документа хочу прочитать в цикле, вижу последнюю строку большое колво раз | |||
| 11
    
        Mafiozaa 19.02.21✎ 09:03 | 
        (7) 
 //******************************************* Перем ТекстXML; Перем ЧистыйКод; Перем ПолученнаяСтрока; Перем ТЗ; Процедура ПриОткрытии() КонецПроцедуры Процедура Сформировать() Текст = СоздатьОбъект("Текст"); ТЗ = СоздатьОбъект("ТаблицаЗначений"); Текст.Открыть("C:\Users\Dmitriy\Desktop\xml.txt"); Для А = 1 По Текст.КоличествоСтрок() Цикл НоваяСтрока(); ТекстXML = Текст.ПолучитьСтроку(А); ЧистыйКод = Сред(ТекстXML,4,42); КодМаркировки = ЧистыйКод; КонецЦикла; ВыгрузитьТабличнуюЧасть(ТЗ); КонецПроцедуры Процедура Проверка() Для А = 1 По КоличествоСтрок() Цикл Сообщить(КодМаркировки); КонецЦикла; КонецПроцедуры Вижу вот это ml version="1.0" encoding="utf-8"?> ml version="1.0" encoding="utf-8"?> ml version="1.0" encoding="utf-8"?> ml version="1.0" encoding="utf-8"?> ml version="1.0" encoding="utf-8"?> ml version="1.0" encoding="utf-8"?> ml version="1.0" encoding="utf-8"?> ml version="1.0" encoding="utf-8"?> ml version="1.0" encoding="utf-8"?> ml version="1.0" encoding="utf-8"?> ml version="1.0" encoding="utf-8"?> ml version="1.0" encoding="utf-8"?> ml version="1.0" encoding="utf-8"?> | |||
| 12
    
        Mafiozaa 19.02.21✎ 09:04 | 
        Я догнал, в переменную у меня залетает строка, а не весь текст, тогда конечно у меня тут все не так)     | |||
| 13
    
        Mikeware 19.02.21✎ 09:05 | 
        (9) не факт. может, у них одна учетка на всех...
 (10) пиши по пунктам. в виде "делаю"(ну, или "хочу сделать")- "вижу". и поймешь, где ошибка (11) все так и должно быть. ты текущую строку не меняешь. | |||
| 14
    
        Mafiozaa 19.02.21✎ 09:11 | 
        (13) 
 Для А = 1 По КоличествоСтрок() Цикл Сообщить(КодМаркировки); А = А + 1; КонецЦикла; Вижу другую строку, но опять же, разве оно не построчно должно считывать без всяких телодвижений с номерамистрок | |||
| 15
    
        hhhh 19.02.21✎ 09:14 | 
        (8) почему как xml не читаешь? вроде в семерке там были какие-то функции, зачем нужно читать через ж.?     | |||
| 16
    
        Mikeware 19.02.21✎ 09:14 | 
        (14) что значит "построчно считывать"?
 если это значит "перебирать строки документа", то с переменной А номер текущй стрроки никак не связан исподьзуц тогда уж ВыбратьСтроки() - пока ПолучитьСтроку() | |||
| 17
    
        Mikeware 19.02.21✎ 09:16 | 
        (15) ну, в клюшках либо через внешние объекты, либо как текст. 
 впрочем, пофиг. можно по-всякому, лишь бы желание было | |||
| 18
    
        Mafiozaa 19.02.21✎ 09:17 | 
        (17) (15) Вот я олень добрый день, спасибо большое человеческое, зациклился на этом Для По и про другое даже не подумал     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |