Имя: Пароль:
1C
1C 7.7
v7: Удаление мусора из файла
0 FreeWay
 
06.08.14
16:04
Есть файл примерно следующего содержания по строкам:

#FILESUM    
#TYPE    
#SERVICE    
#AGRID    
#NOTE    
;;2095;159.13;00;;;4:;01/07/2014;;;;1727;
Иванов Иван Дмитриевич;;1239;1234.54;00;;;4:;01.07.2014;;;;4754;
далее идет набор символов на пару строк


В файле последние две строчки не постоянны по контексту, и к тому же могут быть от 1-ой до 4- строк.

Задача стоит следующая: программно определить эти строки(их количество) и удалить из текстового файла.
Кто сталкивался с подобной задачей?
1 мамонт
 
06.08.14
16:07
(0) Определи критерий оценки, дальше проще будет.
2 Ёпрст
 
06.08.14
16:08
тупо через fso читаешь по строчно файло и пишешь в другое файло по условию.. усё.
3 FreeWay
 
06.08.14
16:09
(1)
Они постоянно меняются ((
подпись сбербанка. и подлине разная и по содержимому
4 мамонт
 
06.08.14
16:10
(3) Зайди с другой стороны, выбирай только нужные строки. Остальное в мусор.
5 FreeWay
 
06.08.14
16:12
парсинг через разделители, в частности ";".
по строкам выходит 13 штук.
А проще вариант существует?
6 acsent
 
06.08.14
16:14
иди с конца.
Это стрчка не ок  - удалить
7 FreeWay
 
06.08.14
16:44
вкратце поступил след образом

РезНабор    = Новый Массив();
Текст= Новый ТекстовыйДокумент;
Текст.Прочитать(ИмяФайла);  
ВсегоСтрок  = Текст.КоличествоСтрок();
Для Строка =6 По ВсегоСтрок цикл
    СтрокаИзФайла  = Текст.ПолучитьСтроку(Строка);
    МассивСтрок    = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(СтрокаИзФайла,";");
    Если МассивСтрок.Количество()=13 или МассивСтрок.Количество()=14 тогда
            РезНабор.Добавить( Новый Структура("Перечисление полей для результирующего набора",МассивСтрок[2],МассивСтрок[3],МассивСтрок[8]));
    КонецЕсли;
КонецЦикла;


количество разделителей тоже разное в файлах ))) и так бывает.
8 Господин ПЖ
 
06.08.14
16:47
какой-то кривоногий csv...

кто этот мусор вам сует? он про xml/xsd не слышал?
9 13_Mult
 
06.08.14
16:50
Регулярные выражения
10 13_Mult
 
06.08.14
16:51
11 FreeWay
 
06.08.14
17:19
(10) Этот вариант не подходит
Сбербанк каждый раз подпись в конце файла меняет. для чего в душе не знаю.....
(8) Файл изначально шифрованный ЭЦП. После расшифровки вроде на что то "похожее" похож.
Но в конце файла мусор мне в юх не нужен, а убирать его Сбербанк не хочет.
Вот так и живем (((
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн