Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Новый участник


Сообщения: 30
Благодарности: 4

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
      If $strokVBloke > 1 Then; если строк больше одной
         ;Заносим в массив последнюю строку, с 1-го символа и до ограничения 
         $ArrayDlinStroka[$strokVBloke] = StringMid ($CurrentLine, 1, $ZnakKonecPost )
      EndIf
Код: Выделить весь код
      ;ПРИБАВЛЯЕМ ПО ОДНОЙ СТРОКЕ, ЗАПИСЫВАЯ В МАССИВ, ПОКА НЕ НАЙДЁМ КОНЕЦ
      While $NumCurrentLineFileInput <= $chisloStrokCurrentFile
         ;Смотрим, кончается ли строка конечным вхождением
         ; ИЩЕМ КОНЕЦ СООБЩЕНИЯ!
         ; Устанавливаем искомую строку 
         $entry = 'что-то там'
         ; регистр не важен, т.к 'что-то там' бывает маленькими
         ;Читаем строку № $NumCurrentLine из файла $fileIn
       $CurrentLine = FileReadLine ( $fileInput, $NumCurrentLineFileInput ) 
       ;Ищем вхождение  $entry с учётом регистра или без
       $entryFound = StringInStr ($CurrentLine, $entry , 0 , 1 )


            If $entryFound > 0 Then
               If $strokVBloke = 1 Then; если вхождение найдено в 1-й строке
                  ;Считаем конец
                  $StrokaKonecPost = $NumCurrentLineFileInput
                  $ZnakKonecPost = $entryFound - 20
                  ;Заносим в массив единственную строку
                  $ArrayDlinStroka[$strokVBloke] = StringMid ($CurrentLine, $ZnakNachaloPost, $ZnakKonecPost) 
               EndIf   
               ExitLoop ;выход из цикла, если вхождение найдено
            EndIf
            ;MsgBox (0, "Вхождение?", $entryFound)
            If $strokVBloke = 1 Then; если вхождение найдено в 1-й строке
               ;Заносим в массив первую строку (ограничение сначала)
               $ArrayDlinStroka[$strokVBloke] = StringMid ($CurrentLine, $ZnakNachaloPost) 
            Else 
               ;Заносим в массив строку без ограничения по длине
               $ArrayDlinStroka[$strokVBloke] = StringMid ($CurrentLine, 1 ) 
            EndIf   

         ;MsgBox (0, "Строка в массиве", $ArrayDlinStroka[$strokVBloke])

         ;увеличиваем счётчики 
         $strokVBloke = $strokVBloke + 1
         $NumCurrentLineFileInput = $NumCurrentLineFileInput + 1

      WEnd
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:49, 17-11-2010 | #7