Чтение из текстового файла
Select messages from
# through # FAQ
[/[Print]\]

-> Программирование в БЭСТ-4

#1: Чтение из текстового файла Author: Дениска PostPosted: 26 Sep 2007 15:55
    —
Как прочитать по строчно текстовый файл? В плагине по импорту выписок нашел какие-то функции. По аналогии пытаюсь написать:
Code:

  Local vipfilename := "E:\SED\0721l119.xr8"
  Local vipfile := fopen(vipfilename, 0)
  Local aEol := { Chr(13) + Chr(10), Chr(10) }
  Local cLine, a1, a8, a2

  if vipfile<0
    return
  endif

  if a8=0
    a8:=HB_FReadLine( vipfile, @cLine, aEol )
    nLineCount++
    dispoutat(1,0,'Строка '+alltrim(str(nLineCount,5)))
    a2 := ToRep(1)
  endif
  a1:=cLine
SayAndWait(a1)


В результате переменные a1, a8 равны nil

Что делает функция HB_FReadLine()?

Какие еще есть функции для чтения из текстового файла?

В БЭСТ5 такие же функции?

#2:  Author: BehemothLocation: Новиков Алексей Юрьевич PostPosted: 26 Sep 2007 16:14
    —
Добрый день.

Вот кусок кода, читающий строки из текстового файла. Проверено, работает. Очередная строка содержится в a1 и cLine.
Code:

  local vipfilename:='C:\besttree\12\import\vip.txt'
  local vipfile:=fopen(vipfilename,0)
  local aEol := { Chr(13) + Chr(10), Chr(10) }
  local cLine

  if vipfile<0
    return
  endif

  a8:=0
  do while a8=0
    a8:=HB_FReadLine( vipfile, @cLine, aEol )
    a1:=cLine
    sayandwait(a1)
//Здесь Ваши операторы

  enddo
  fclose(vipfile)


a8:=HB_FReadLine( vipfile, @cLine, aEol ) - читает из файла с номером vipfile очередную строку, ограниченную символом(строкой) из aEol в переменную cLine. В a8 оказывается результат чтения. Если он меньше нуля, значит произошла ошибка чтения (например, файл закончился).

В БЭСТ-5 используется точно такой же блок код



-> Программирование в БЭСТ-4


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Page 1 of 1

Powered by phpBB © 2001, 2005 phpBB Group