Количество строчек в файле

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by OPF_Nik, 11 Jan 2010.

  1. OPF_Nik

    OPF_Nik New Member

    Joined:
    6 Nov 2009
    Messages:
    36
    Likes Received:
    3
    Reputations:
    -5
    Народ, как узнать количество строчек в текстовом файле???
    Строчек много, порядком 2000-3000, может больше
     
  2. drim

    drim Member

    Joined:
    27 Aug 2009
    Messages:
    347
    Likes Received:
    33
    Reputations:
    4
    cat filename.txt | wc -l
     
  3. OPF_Nik

    OPF_Nik New Member

    Joined:
    6 Nov 2009
    Messages:
    36
    Likes Received:
    3
    Reputations:
    -5
    на Delphi надо
     
  4. drim

    drim Member

    Joined:
    27 Aug 2009
    Messages:
    347
    Likes Received:
    33
    Reputations:
    4
    начинаеться... а сразу корректно сформулировать техническое задание религия не позволила?
     
  5. OPF_Nik

    OPF_Nik New Member

    Joined:
    6 Nov 2009
    Messages:
    36
    Likes Received:
    3
    Reputations:
    -5
    drim
    торопился, не подумал
     
  6. drim

    drim Member

    Joined:
    27 Aug 2009
    Messages:
    347
    Likes Received:
    33
    Reputations:
    4
    в след. раз думайте

    по сабжу - вам алгоритм нужен или готовое решение?
    второе, как правило, стОит денег
     
  7. LolFEm

    LolFEm Elder - Старейшина

    Joined:
    8 Sep 2006
    Messages:
    160
    Likes Received:
    52
    Reputations:
    5
    Code:
    { **** UBPFD *********** by delphibase.endimus.com ****
    >> Подсчет количества строк в текстовом файле
    
    Считает строки в текстовом файле,
    основываясь на количестве символов $0A (LineFeed).
    
    Зависимости: Windows
    Автор:       Борис Новгородов, [email protected], Новосибирск
    Copyright:   Собственное написание
    Дата:        1 декабря 2002 г.
    ***************************************************** }
    
    function LinesCount(const Filename: string): Integer;
    var
      HFile: THandle;
      FSize, WasRead, i: Cardinal;
      Buf: array[1..4096] of byte;
    begin
      Result := 0;
      HFile := CreateFile(Pchar(FileName), GENERIC_READ, FILE_SHARE_READ, nil,
        OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
      if HFile <> INVALID_HANDLE_VALUE then
      begin
        FSize := GetFileSize(HFile, nil);
        if FSize > 0 then
        begin
          Inc(Result);
          ReadFile(HFile, Buf, 4096, WasRead, nil);
          repeat
            for i := WasRead downto 1 do
              if Buf[i] = 10 then
                Inc(Result);
            ReadFile(HFile, Buf, 4096, WasRead, nil);
          until WasRead = 0;
        end;
      end;
      CloseHandle(HFile);
    end;
    
    Пример использования: 
    Label1.Caption := IntToStr(LinesCount('e:zz.txt'));
     
  8. ZdezBilYa

    ZdezBilYa Elder - Старейшина

    Joined:
    29 Aug 2008
    Messages:
    198
    Likes Received:
    75
    Reputations:
    19
    str:TStringList;
    str:=TStringList.Create;
    str.LoadFromFile('myfile');
    str.Count - количество строк
     
  9. OPF_Nik

    OPF_Nik New Member

    Joined:
    6 Nov 2009
    Messages:
    36
    Likes Received:
    3
    Reputations:
    -5
    LolFEm спс

    ZdezBilYa слишком "тяжелый метод"
     
  10. da_ff

    da_ff Elder - Старейшина

    Joined:
    11 Jul 2006
    Messages:
    118
    Likes Received:
    22
    Reputations:
    26
    да вы охренели! за что деньги то?! уже и пальцем лень пошевелить для другого человека?
     
  11. patcher

    patcher Banned

    Joined:
    15 Dec 2009
    Messages:
    190
    Likes Received:
    37
    Reputations:
    10
    [OFFTOP]
    Улыбнуло :D
    [/OFFTOP]
     
  12. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    Количество символа "\n" + 1.
     
  13. Andres

    Andres Elder - Старейшина

    Joined:
    4 Apr 2008
    Messages:
    320
    Likes Received:
    119
    Reputations:
    0
    length, не?
     
  14. waik

    waik Elder - Старейшина

    Joined:
    2 Nov 2008
    Messages:
    405
    Likes Received:
    163
    Reputations:
    12
    da_ff что кричишь.А ТСу не лень в гугл зайти???Человек сказал что может за деньги сделать и это его условия,тебя платить он не просит.