Как загрузить текст из текстового файла (Дельфи)?

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Tapaceuka, 28 Jan 2008.

  1. Tapaceuka

    Tapaceuka New Member

    Joined:
    13 Jan 2008
    Messages:
    111
    Likes Received:
    2
    Reputations:
    -6
    Есть у мну вот такой кусок кода на дельфи 7
    SM.Username :=UserEd.Text;

    Как зделать чтобы данные о SM.Username он грузил не с UserEd.Text а с username.txt который лежит в одной папке вместе с программой ?
     
    #1 Tapaceuka, 28 Jan 2008
    Last edited by a moderator: 29 Jan 2008
  2. Slip

    Slip Member

    Joined:
    26 Jun 2007
    Messages:
    14
    Likes Received:
    10
    Reputations:
    1
    TStringList -> TStringList.LoadFromFile -> TStringList.Strings[123] ?????
     
  3. Tapaceuka

    Tapaceuka New Member

    Joined:
    13 Jan 2008
    Messages:
    111
    Likes Received:
    2
    Reputations:
    -6
    зделай сам плз строку, а то у м устрока вот такая:
    SM.Username :=TStringList(username.txt);
    и выдаёт вот такое
    [Ошибка] Unit1.pas(55): Undeclared identifier: 'txt'
     
  4. KEZ

    KEZ Ненасытный школьник

    Joined:
    18 May 2005
    Messages:
    1,604
    Likes Received:
    754
    Reputations:
    397
    username.txt -> "username.txt" ?
     
    1 person likes this.
  5. Tapaceuka

    Tapaceuka New Member

    Joined:
    13 Jan 2008
    Messages:
    111
    Likes Received:
    2
    Reputations:
    -6
    теперь выдаёт такую ошибку
    [Ошибка] Unit1.pas(55): Invalid typecast
     
  6. Slip

    Slip Member

    Joined:
    26 Jun 2007
    Messages:
    14
    Likes Received:
    10
    Reputations:
    1
    MyStringList = TStringList.Create();// Обязательно нужно создать объект
    MyStringList.LoadFromFile("filename.txt");

    Больше года не пишу на делфе, не знаю чо в голову стукнуло =\\

    Вот здесь есть пример http://www.realcoding.net/article/view/1763
     
  7. LEE_ROY

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

    Joined:
    9 Nov 2006
    Messages:
    450
    Likes Received:
    188
    Reputations:
    26
    " -> '
     
  8. krypt3r

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

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    Хы, по жизни в дельфях ограничителем строковых переменных являлся апостроф aka одинарная кавычка, а не двойная. А что за операция "->" в делфи? Один из многих вариантов:
    Code:
    var
      ts : TStringList;
    begin;
      ts := TStringList.Create;
      ts.LoadFromFile ('filename.txt');
      SM.Username := ts.Strings[0];  
      ts.Free
    end;
    
    нуль вы можете заменить на другой индекс, смотря где имя юзера в файле будет находиться.
    И не забывайте освобождать объект, когда он уже не нужен, например, в конце программы. Можно еще и почти паскалевским методом идти через AssignFile - CloseFile
     
  9. noobyara

    noobyara Member

    Joined:
    27 Jan 2008
    Messages:
    13
    Likes Received:
    8
    Reputations:
    0
    = (LEE_ROY сказал тоже самое просто покороче...).
    - вопрос снимается.