как взять рандомную строчку из тхт файла?
есть файл 1.txt в нем в каждой строчке есть слова, мне нужно что бы по нажатию горячей клавиши приложение брало рандомную строчку из этого файла и запоминало в буфер обмена? Я нашел код, как брать весь текст из файла и с помощью CopyToClipBoard ложить в буфер обмена, но мне нужна только 1 любая строчка!
Если тебе что-то говорят слова TextFile и Readln, открой файл, подсчитай сколько строк и Random тебе в руки.
1.открываем файл
2.узнаём номер строки
3.считываем до '\n' как прочитали '\n' дальше будет новая строка
4.ну и запихиваем всё это в цикл
Код:
procedure Ran;
var
T : TStringList;
begin
T := TStringList.Create;
T.LoadFromFile('c:\NameFile.txt');
ShowMessage(IntToStr(T.Count-1)); //показать сколько всего строчек
ShowMessage(T.Text); //вывести весь текст который имеется в файле
ShowMessage(T.Size); //вывести размер файла
Randomize;
ShowMessage(T[Random(T.Count-1)]); //вывести случайную строку в диапазоне max=кол-ву строк в файле
//счет строк начинается с 0, нужно проверить будет ли Random выводить когда либо ноль или всегда будет начинать с 1
T.Clear;
T.Free;
end;
var
T : TStringList;
begin
T := TStringList.Create;
T.LoadFromFile('c:\NameFile.txt');
ShowMessage(IntToStr(T.Count-1)); //показать сколько всего строчек
ShowMessage(T.Text); //вывести весь текст который имеется в файле
ShowMessage(T.Size); //вывести размер файла
Randomize;
ShowMessage(T[Random(T.Count-1)]); //вывести случайную строку в диапазоне max=кол-ву строк в файле
//счет строк начинается с 0, нужно проверить будет ли Random выводить когда либо ноль или всегда будет начинать с 1
T.Clear;
T.Free;
end;