0 / 0 / 1
Регистрация: 03.03.2009
Сообщений: 9

S.O.S. Текстовые файлы и MEMO

03.03.2009, 16:11. Показов 6573. Ответов 36
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Необходимо написать программу, довольно таки простую, на первый взгляд. есть какой-то тектовый файл, необходимо открыть его пошагово в МЕМО т.е. при нажатии кнопки "Далее" выводиться первая строка, опять нажимаем кнопку-вторая и так далее.
какой именно цикл необходимо запустить? Помогите пожалуйста, нужно очень срочно до 8 марта!
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.03.2009, 16:11
Ответы с готовыми решениями:

Текстовые файлы
В текстовом редакторе создать файл с информацией о сотрудниках организации.Каждая строка файла содержит фамилию и год рождения сотрудника,...

Текстовые файлы
Дан текстовый файл f. Вывести все его стpоки, содеpжащие более 10 символов. Помогите))

Текстовые Файлы
Дан текстовый файл. Перенести в новый файл те строки исходного файла, которые начинаются и заканчиваются одной и той же буквой (вне...

36
0 / 0 / 1
Регистрация: 03.03.2009
Сообщений: 9
09.03.2009, 16:23  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от marubik Посмотреть сообщение
procedure TForm1.Button1Click(Sender: TObject);var s:string;begin readln(f,s); Memo1.Lines.Add(s);end;
данная процедура загружает весь файл, полностью, а как сделать чтобы построчно? :'(
0
 Аватар для Arriba
257 / 173 / 27
Регистрация: 17.10.2008
Сообщений: 770
09.03.2009, 17:29
shark-girl, Пришу лично для тебя, проверь моё предположение...
shark-girl,тут есть один подвох.
В ReadLn(f,s); в переменную S записывается не одна строчка из текстового файла а та часть которая разделена невидимыми символами #10#13 (проще-интер в конце строчки) Но есть такая фишка в текстовых файлах, как перенос по словам--это значит что не обязательно одна строчка разделённая интерами с двух сторон находится на одной строчке в файле...(Длинные строчки могут располагаться на нескольких строчках в файле) Так что учтите данный момент...обычно так получается если копируешь какой нибудь текст от куда нибудь...
1
 Аватар для Arriba
257 / 173 / 27
Регистрация: 17.10.2008
Сообщений: 770
09.03.2009, 18:14
Вот я тебе в архиве кладу програмку твою со всеми пояснениями, надеюсь легко разберёшся, и я выкладываю два текстовых файла для примера...
Почитай начало файла "Для проверки.txt" и всё поймёшь...
Вложения
Тип файла: rar 81.rar (9.4 Кб, 29 просмотров)
1
0 / 0 / 0
Регистрация: 04.03.2009
Сообщений: 12
09.03.2009, 20:56
Цитата Сообщение от marubik Посмотреть сообщение
Добавляешь адресную строку в образе TEdit.
Delphi
1
2
3
4
5
6
7
procedure TForm1.Button1Click(Sender: TObject);
 var
 dir:string;
 begin
  Dir:=ExtractFileDir(Application.exeName);
  WebBrowser1.Navigate(Dir+'/'+Edit1.Text);
 end;
программа не знает какой файл открывать из каталога, нужно чтобы сначала открыл index.html 2 клик index2.html. TEdit ? у меня webbrowser.
записал строчку
Delphi
1
WebBrowser_V11.Navigate(Dir+'/'+'index.html');
но не открывает следующий файл, + как избавиться от ошибок сценариев на странице (по умолчанию продолжить выполнение сценариев на странице) ошибка IE
Delphi
1
 ExtractFilePath(Application.ExeName)+'MyFile.html'
p.s. как растягивать окно webbrowser в зависимости от полноэкранного режима
0
 Аватар для marubik
9 / 9 / 1
Регистрация: 04.03.2009
Сообщений: 59
09.03.2009, 22:03
Цитата Сообщение от orfo Посмотреть сообщение
нужно чтобы сначала открыл index.html 2 клик index2.html
Попробуй так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
var
  Form1: TForm1;
  i:Integer;
...
procedure TForm1.Button1Click(Sender: TObject);
 var
 s:String;
  begin
  inc(i);
  if odd(i) then s:='index.html' else s:='index2.html';
    WebBrowser1.Navigate(ExtractFilePath(Application.ExeName)+s);
  end;
Это при условии, что твои html-файлы лежат в той же дректории, что и экзешник.
1
 Аватар для Arriba
257 / 173 / 27
Регистрация: 17.10.2008
Сообщений: 770
09.03.2009, 22:15
orfo, p.s. как растягивать окно webbrowser в зависимости от полноэкранного режима---дорогой ты не с того начал дельфак изучать, у тебя таким макаром интерес пропадёт к нему...начни с чего нить попроще, а потом перейди к этому заданию...и узнаешь на сколько всё просто...Если мы тебе тупо прогу напишем это совсем плохо будет, ты просто скопируешь и всё...
свойство align меняй у TWebBr
1
10.03.2009, 00:00

Не по теме:

Arriba это конечно правильно я там быстро не выучу

0
0 / 0 / 1
Регистрация: 03.03.2009
Сообщений: 9
15.03.2009, 12:57  [ТС]
Еще один вопросик, а можно сделать так, чтобы не строками загружался файл, а обзацами и без изменений т.е. в существующем виде так как он написан
Напр. procedure TRectangle.SetX1(ax1:integer);
Begin
X1:=a;
end;
загружается в МЕМО целиком, без перенесения строк????
0
 Аватар для marubik
9 / 9 / 1
Регистрация: 04.03.2009
Сообщений: 59
15.03.2009, 18:59
Цитата Сообщение от shark-girl Посмотреть сообщение
обзацами и без изменений
Поясни, пожалуйста.
0
 Аватар для Arriba
257 / 173 / 27
Регистрация: 17.10.2008
Сообщений: 770
17.03.2009, 23:07
Цитата Сообщение от marubik Посмотреть сообщение
Поясни, пожалуйста.
Да что тут пояснять то, девушка хочет вывести текствовый фаил так, как она его видит в текстовом редакторе(возможно с включённой функцией-перенос по словам)

Добавлено через 28 минут 41 секунду
shark-girl, девушка, вы уточните точно, что вам хочется получить в итоге---текстовый редактор или что нить ещё, может всё намного проще, чем вы придумываете...
0
 Аватар для marubik
9 / 9 / 1
Регистрация: 04.03.2009
Сообщений: 59
18.03.2009, 04:52
Цитата Сообщение от shark-girl Посмотреть сообщение
загружается в МЕМО целиком, без перенесения строк
Так может, по-просту, WordWrap установить в True ?
0
0 / 0 / 0
Регистрация: 04.03.2009
Сообщений: 12
30.03.2009, 00:29
Цитата Сообщение от marubik Посмотреть сообщение
Попробуй так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
var
  Form1: TForm1;
  i:Integer;
...
procedure TForm1.Button1Click(Sender: TObject);
 var
 s:String;
  begin
  inc(i);
  if odd(i) then s:='index.html' else s:='index2.html';
    WebBrowser1.Navigate(ExtractFilePath(Application.ExeName)+s);
  end;
Это при условии, что твои html-файлы лежат в той же дректории, что и экзешник.
Delphi
1
2
3
4
5
6
7
8
s:String;
o:integer;
 
begin
  o:=o+1;
  inc(i);
 s:=('index'+IntToStr(o)+'.html');  
 WebBrowser1.Navigate(ExtractFilePath(Application.ExeName)+s);
попытался сделать так но к сожалению файлы webbrowser не находит ... суть в том чтобы страницы при каждом клике открывались 1 2 3 4 5 ... (index1.html index2.html)
что не так?
0
 Аватар для marubik
9 / 9 / 1
Регистрация: 04.03.2009
Сообщений: 59
30.03.2009, 11:02
суть в том чтобы страницы при каждом клике открывались 1 2 3 4 5 ... что не так?
Все так. Только определись с числовой переменной. Попробуй следующий код.
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
...
var
  Form1: TForm1;
  i:Integer;
  s:String;
implementation
 
{$R *.dfm}
 
procedure TForm1.Button1Click(Sender: TObject);
begin
inc(i);
s:=('index'+IntToStr(i)+'.html'); //html'ки лежат в той же директории что и exe'шник
 if fileExists(s) then  //Проверяем наличие файла
    WebBrowser1.Navigate(ExtractFilePath(Application.ExeName)+s)
 else                   //в противном случае ... придумай что-нибудь
end;
 
end.
1
0 / 0 / 0
Регистрация: 04.03.2009
Сообщений: 12
30.03.2009, 18:58
marubik прокатило спс, а как сделать чтобы можно было возвращаться на предыдущую страницу? массив ?
p.s. если честно не шарю в делфи но очень нужно
0
 Аватар для marubik
9 / 9 / 1
Регистрация: 04.03.2009
Сообщений: 59
30.03.2009, 20:30
как сделать чтобы можно было возвращаться на предыдущую страницу?
если честно не шарю в делфи но очень нужно
Если честно, Delphi здесь непричем.
Короче, вот код для двух кнопок. Туда и обратно.
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
...
var
  Form1: TForm1;
  i:Integer;
  s:String;
implementation
 
{$R *.dfm}
 
procedure TForm1.Button1Click(Sender: TObject);
begin
inc(i);
s:=('index'+IntToStr(i)+'.html'); //html'ки лежат в той же директории что и exe'шник
 if fileExists(s) then  //Проверяем наличие файла
    WebBrowser1.Navigate(ExtractFilePath(Application.ExeName)+s)
 else                   //в противном случае
 dec(i);                // не даем переменной увеличиваться
 end;
 
procedure TForm1.Button2Click(Sender: TObject);
begin
dec(i);
s:=('index'+IntToStr(i)+'.html'); //html'ки лежат в той же директории что и exe'шник
 if fileExists(s) then  //Проверяем наличие файла
    WebBrowser1.Navigate(ExtractFilePath(Application.ExeName)+s)
 else                   //в противном случае
 inc(i);                // не даем переменной уменьшаться
 end;
 
end.
Большая просьба! Не повышай мою репутацию! Мне стыдно завоевывать ее за счет таких вопросов!
1
31.03.2009, 01:47

Не по теме:

marubik а мне стыдно спрашивать такое. Большое человеческое спасибо

0
0 / 0 / 1
Регистрация: 03.03.2009
Сообщений: 9
03.04.2009, 16:27  [ТС]
поясняю, простите что так долго, есть текстовый файл, в нем есть абзацы, так надо чтобы в мемо выводился весь абзац, если ставить enter, то выводиться только одна строка абзаца, а вторая при повторном нажатии копки, а ставить пробелы вместо enter"а" нуторно, их не всегда подсчитать возможно! в итоге получается криво и косо, ну очень не красиво!!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.04.2009, 16:27
Помогаю со студенческими работами здесь

Текстовые файлы
Дан текстовый файл литерных величин. Выяснить, верно ли, что среди символов данного текста есть n подряд идущих символов, значение которого...

Типизированные и текстовые файлы
Задан текстовый файл с целыми числами. Переписать в типизированный файл (file of integer или file of double) разность между числами и...

Текстовые, типизированные файлы
1. Пусть дан файл, хранящий последовательность целых чисел. Орпеделите, является ли последовательность знакопеременной. 2. Пусть дан...

Не открываются текстовые файлы
program Project2; {$APPTYPE CONSOLE} uses SysUtils, Math; function tmax(s:string):Integer; const mn=; var i,t,smax:...

Соединить текстовые файлы
Возле программы расположено, к примеру, 5 текстовых файлов. Как при нажатии кнопки соединить их в один ?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
37
Ответ Создать тему
Опции темы

Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru