Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.07.2011, 19:28   #1
g00dhash
 
Регистрация: 15.07.2011
Сообщений: 4
По умолчанию Cлучайный массив текста из txt

Ребя хелп
Нужно выводить текст который в разделителях # из txt файла случайным образом
Пример содержания txt файла

Цитата:
#
текст1
текст1
текст1
#
текст2
текст2
#
....
.....
....
....
#
пробовал так.. хз короче) посоветуйте от куда капать начинать)
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
str, sRandom:string;
s: TStrings;
begin
  Randomize;
  s := TStringList.Create();
  s.LoadFromFile('file.txt');
  sRandom := S.Strings[Random(S.Count)];
  str:=copy(sRandom,pos('#', sRandom) +1 , pos('#', sRandom)  - pos('#', text) -1);
  memo1.Lines.Add(str);
end;
g00dhash вне форума Ответить с цитированием
Старый 15.07.2011, 21:38   #2
spamer
Software Developer
Старожил
 
Аватар для spamer
 
Регистрация: 19.12.2008
Сообщений: 2,070
По умолчанию

Если правильно понял, то как-то...вроде работает:
Код:
procedure TForm1.Button3Click(Sender: TObject);
var
  str: TStringList;
  mas: array of Integer;
  i, _begin, _end: Integer;
begin
  str := TStringList.Create;
  try
    str.LoadFromFile('olo.txt');
    SetLength(mas, 1);
    for i := 0 to str.Count - 1 do
    begin
      if str.Strings[i] = '#' then
      begin
        mas[Length(mas) - 1] := i;
        SetLength(mas, Length(mas) + 1);
      end;
    end;
    SetLength(mas, Length(mas) - 1);

  Randomize;
  i := Random(High(mas));
  _begin := mas[i] + 1;
  _end := mas[i + 1] - 1;

  for i := _begin to _end do
    Memo1.Lines.Add(str.Strings[i]);

  Memo1.Lines.Add('                ');
  finally
    FreeAndNil(str);
  end;
end;
Структура файла для теста:
Код:
#
текст11
текст12
текст13
#
текст21
текст22
#
текст31
текст32
текст33
#
текст41
текст42
#
текст51
текст52
текст53
#
Будь проще и люди к тебе потянутся
spamer вне форума Ответить с цитированием
Старый 15.07.2011, 21:53   #3
g00dhash
 
Регистрация: 15.07.2011
Сообщений: 4
По умолчанию

spamer, спасибо все работает) +
g00dhash вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод текста из TXT файла Fallart Общие вопросы C/C++ 5 17.05.2011 19:04
Запись из файла txt в массив aleks_m Общие вопросы Delphi 5 06.05.2011 15:04
Сохранение текста в txt файл на UCOZe maksim1995 JavaScript, Ajax 8 12.02.2011 23:39
Вывод текста из документа txt soonner JavaScript, Ajax 4 12.05.2009 16:26
Перевод текста из HTML в txt Valkiria Помощь студентам 8 10.10.2007 18:39