Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

открытие файла в memo


Blackie ©   (2006-11-01 17:50:00) 

В результате выполнения следующей процедуры текст в memo из архива не открывается. В editbox1 хранится путь до папки, в listbox - файлы этой папки. Само значение ф-и RE_LoadFromFile после выполнения true.

procedure TForm1.ListBox1MouseDblClk(Sender: PControl;
 var Mouse: TMouseEventData);
begin
editbox3.Text:=editbox1.Text+'\'+listbox1.items[listbox1.curindex];
memo1.RE_LoadFromFile(editbox1.Text+'\'+listbox1.items[listbox1.curindex],reText,false)
end;

Что я не так делаю?


Blackie   (2006-11-03 02:54:00) [1]

то есть я для этого использовал все тот же код по выводу символов с кодом кратным 2. зависло.


Blackie   (2006-11-03 02:48:00) [2]

да, все работает. спасибо. только при открытии больших файлов подвисает (~250 Кб).


D[u]fa   (2006-11-02 23:27:00) [3]

Ketmar, дык все написано уже %)

File2Str
StrLoadFromFile
StrSaveToFile.... и т.д.


Vladimir Kladov   (2006-11-02 19:46:00) [4]

Вообще есть ф-ция File2Str - меньше просто не придумать:
Memo.Text := File2Str( filepath );


Ketmar   (2006-11-02 19:43:00) [5]

>[11] Vladimir Kladov 2-Nov-2006, 19:41
>...и сравните размер экзешника. "Стандартные" Паскалевские
>read/write увеличивают код довольно изрядно.
ну, для просто file -- вообще проще WinAPI использовать. а вот для Text писать самому лениво. %-)


Vladimir Kladov   (2006-11-02 19:41:00) [6]

...и сравните размер экзешника. "Стандартные" Паскалевские read/write увеличивают код довольно изрядно.


D[u]fa   (2006-11-02 19:32:00) [7]

лучше FileOpen, FileRead.... =)


Ketmar   (2006-11-02 19:01:00) [8]

>[8] MTsv DN(c) 2-Nov-2006, 18:57
>Добавьте выделенную строчку...
лучше FileMode := $20. для чтения самое то.


MTsv DN   (2006-11-02 18:57:00) [9]

assignfile(f,editbox3.text);
FileMode := 0;
reset(f,1);

Добавьте выделенную строчку...


Ketmar   (2006-11-02 18:18:00) [10]

>[6] Blackie 2-Nov-2006, 18:06
>да нет, обычные файлы, вообще не открытые в системе.
>просто тренировочный пример.
значит, прав нет.


Blackie   (2006-11-02 18:06:00) [11]

да нет, обычные файлы, вообще не открытые в системе. просто тренировочный пример.


Ketmar   (2006-11-01 22:51:00) [12]

файл кем-то занят?


Blackie   (2006-11-01 22:13:00) [13]

А вот еще код, тоже не работает.

procedure TForm1.ListBox1MouseDblClk(Sender: PControl;
 var Mouse: TMouseEventData);
var f:file; a:byte;
begin
editbox3.Text:=editbox1.Text+'\'+listbox1.items[listbox1.curindex];
assignfile(f,editbox3.text);
reset(f,1);
while not(eof(f)) do begin
blockread(f,a,1);
if a mod 2=0 then memo1.text:=memo1.Text+chr(a);
                    end;
closefile(f);
end;

Пишет "Runtime error 5 at 00406E0D".


Vladimir Kladov   (2006-11-01 19:32:00) [14]

...не успел


Vladimir Kladov   (2006-11-01 19:30:00) [15]

в мемо или в rich edit?


D[u]fa   (2006-11-01 19:25:00) [16]

для мемо на по др. делать, Memo1.Text:= StrLoadFromFile('....');


Наверх

Титульная страница Поиск, карта сайта Написать письмо