Имя: Пароль:
1C
 
Не загружается из TXT
,
0 Shmidt
 
02.12.14
10:51
Нашел тему Загрузка из txt в 1с 8.
Все вроде бы сделал как там.
Кусок кода:
ТекстИзФайла = Новый ТекстовыйДокумент;
    ТекстИзФайла.Прочитать("C:\Documents and Settings\user\Рабочий стол\ключи.txt",,Символы.ПС);
    Тест = ТекстИзФайла.ПолучитьТекст();
    
    Для НомерСтроки = 1 по Тест.КоличествоСтрок() Цикл
        Строка = Тест.ПолучитьСтроку(НомерСтроки);
        Сообщить(Строка);
    КонецЦикла;

Но выпадает с ошибкой:
{Обработка.Конверт.Форма.Форма.Форма(16)}: Значение не является значением объектного типа (КоличествоСтрок)
    Для НомерСтроки = 1 по Тест.КоличествоСтрок() Цикл

И в отладчике смотрю Тест - тип Строка. Тоесть получается из файла загружается 1 огромная строка.

Пример файла:
Фамилия;Имя;Отчество;дата1;дата2;номер карты
Абыхвостова;Екатерина;Станиславовна;01.01.2012;01.01.2015;1F000000C379EF01
Авдеев;Александр;Сергеевич;01.01.2012;01.01.2015;28000000EC7C1301
Аврамцев;Виталий;;01.01.2012;01.01.2015;DD0000006E398B01

В чем может быть причина? Корявый формат файла?
1 Oleg_ka
 
02.12.14
10:54
Ого!
Читаю вопрос и вижу ответ!
Тест - тип Строка
2 Maxus43
 
02.12.14
10:56
Для НомерСтроки = 1 по ТекстИзФайла.КоличествоСтрок() Цикл
3 Maxus43
 
02.12.14
10:56
Тест = ТекстИзФайла.ПолучитьТекст(); - выкинь
4 Shmidt
 
02.12.14
10:57
Тогда вопрос. Почему он строка и как сделать его таблицей.
Вообще задача в следующем. Прочитать файл. Последняя колонка в строке - код в шестнадцатиричной системе. Этот код перевести в десятиричную и дописать в конце еще одним полем. В таком виде сохранить файл
5 Maxus43
 
02.12.14
10:57
>>В чем может быть причина? Корявый формат файла?
кто-то не читает СП по религиозным соображениям
6 Shmidt
 
02.12.14
10:58
Что именно почитать?
7 Поpyчик-4
 
02.12.14
10:58
Ещё не было?
Для НомерСтроки = 1 по ТекстИзФайла.КоличествоСтрок() Цикл


(0) Причина в корявых руках, растущих не оттуда пальцами вовнутрь.
8 Легат
 
02.12.14
10:59
А чем плохо "ЧтениеТекста"?..
9 Shmidt
 
02.12.14
11:00
(7) Ладно... промолчу...
10 Maxus43
 
02.12.14
11:00
(6) ПолучитьТекст() что вернёт? Строку, а не массив строк или ещё что. И какого ты у него количество хочешь получить?
КоличествоСтрок() - метод ТекстовогоДокумента, а не метод после ПолучитьТекст()
11 Oleg_ka
 
02.12.14
11:00
А давайте я человеку еще больше головной боли подкину?

Текст = Новый ЧтениеТекста("d:\win.txt", КодировкаТекста.ANSI);
Стр = Текст.ПрочитатьСтроку();
Пока Стр <> Неопределено Цикл // строки читаются до символа перевода строки
    Сообщить(Стр);
    Стр = Текст.ПрочитатьСтроку();
КонецЦикла;
12 ДенисЧ
 
02.12.14
11:01
(4) Строка он потому, что так написано в документации.
Сделать таблицей - руками. Которые у ТС растут не оттуда
13 Shmidt
 
02.12.14
11:03
У меня все оттуда. Мне этот файл настройщики турникетов скинули и попросили перевести в десятеричную систему код
14 Легат
 
02.12.14
11:04
Жосские вы человеки..
15 Shmidt
 
02.12.14
11:04
Ну за ответы спасибо, взлетело
16 Goggy
 
02.12.14
11:08
(14) Да нет. Всё довольно мило и безобидно ещё...
Вот помню былые деньки на мисте... Эх...
17 Wobland
 
02.12.14
11:09
1F000000C379EF01 в десятичную систему, говоришь? ну-ну
18 Wobland
 
02.12.14
11:10
(17) а всего 19 знаков
19 Shmidt
 
02.12.14
11:13
(18) (17) Да с переводом проблем не возникло. На калькуляторе проверял все правильно переводит
20 Серго62
 
02.12.14
11:14
(17) А в чем подвох-то?
21 Wobland
 
02.12.14
11:15
(20) ну я думал, там знаков 90 будет ;)
22 Shmidt
 
02.12.14
11:33
Проблемы не закончились (((
Строки получаются и все хорошо. Но как бы теперь получать по отдельности значения отделенные ";" и записывать... да хоть куда?
23 Wobland
 
02.12.14
11:34
(22) стрзаменить символы.пс
24 ДенисЧ
 
02.12.14
11:35
(22) в типвых есть РазложитьСтрокуНаМассивПодстрок()