Конференция "WinAPI" » Как узнать размер файла
 
  • Anatoly Podgoretsky © (06.02.08 13:43) [20]
    > Andrewtitoff  (06.02.2008 13:16:19)  [19]

    При чем тут рекомендации, тут RTFM нужен

    Obsolete Functions

    _hread
    _hwrite
    _lclose
    _lcreat
    _llseek
    _lopen
    _lread
    _lwrite
    OpenFile
    SetHandleCount
  • Andrewtitoff © (08.02.08 13:05) [21]
    2 All
    Подскажите пожалуйста почему при использовании FileStream у меня цикл зацикливается?....

    F := TFileStream.Create(MD+'\p.lft',fmOpenReadWrite);
    ......
      while not i<>0 do
      begin
       i:=F.read(FString,671);
       if i<>0 then sn:=sn+1; else break;
      end;


    Раньше выло так:

    var
    f : file of MyString
    begin
    ......
      while not eof(f) do
      begin
       read(f,FString);
       sn:=sn+1;
      end;


    и все работало...
  • Andrewtitoff © (08.02.08 13:07) [22]
    точнее с "else break;" то естественно не зацикливается, только sn получается на 1 больше, а вот без "else break;" зацикливается....
  • Сергей М. © (08.02.08 13:20) [23]

    > Andrewtitoff ©   (08.02.08 13:05) [21]


    И эта беда у тебя компилируется ?)
  • ketmar © (08.02.08 13:21) [24]
    >while not i<>0 do
    это что за хренотень?

    ---
    Understanding is not required. Only obedience.
  • Andrewtitoff © (08.02.08 13:32) [25]
    2 Сергей М.
    Да, компилируется, а что не так?

    2 ketmar
    Ой, спасибо!, забыл "not" убрать когда переделывал...  =)))
  • ketmar © (08.02.08 13:38) [26]
    >[25] Andrewtitoff © (2008-02-08 13:32:00)
    я вообще на этой строке повис. хорошо, пиво было. она ж в глаза бросается и визжит просто. %-)

    ---
    Understanding is not required. Only obedience.
  • Сергей М. © (08.02.08 13:42) [27]

    > компилируется, а что не так?


    Ну как что ?

    semicolon же перед else )
  • Сергей М. © (08.02.08 13:44) [28]
    И вообще - что ты хочешь от этого кода ?
  • Andrewtitoff © (08.02.08 13:52) [29]
    2 Сергей М
    Ааа, ну это то понятно, его естественно там нет в оригинале...
    Да я просто пока тут все переделываю совсем запарился и незаметил "нот", теперь все нормально, а вообще этот код просто считает количество записей моего типа в файле, я просто сначала все тупо переправил настримы, а теперь вот разбираюсь где что проглядел...,  а вообще конечно надо поменять на  sn:=F.Sise/671 , просто проглядел...
  • ketmar © (08.02.08 14:21) [30]
    >[29] Andrewtitoff © (2008-02-08 13:52:00)
    >этот код просто считает количество записей моего типа в файле
    OMFG! взять размер файла и поделить на размер записи — никак?

    ---
    Understanding is not required. Only obedience.
  • Andrewtitoff © (08.02.08 14:41) [31]
    2 ketmar
    А я что написал выше?.... [29] :
    ......
    а вообще конечно надо поменять на  sn:=F.Sise/671 , просто проглядел...
  • ketmar © (08.02.08 14:47) [32]
    >[31] Andrewtitoff © (2008-02-08 14:41:00)
    соори, я тоже проглядел. %-)

    ---
    Understanding is not required. Only obedience.
  • Игорь Шевченко © (08.02.08 14:57) [33]
    Andrewtitoff ©   (08.02.08 13:05) [21]

    Читаем правила форума и задаем отдельный вопрос в отдельной ветке.
 
Конференция "WinAPI" » Как узнать размер файла
Есть новые Нет новых   [135565   +21][b:0][p:0.001]