Форум: "Начинающим";
Текущий архив: 2006.02.12;
Скачать: [xml.tar.bz2];
ВнизКак открыть с помощью FileOpen? Найти похожие ветки
← →
Erudit (2006-01-27 20:59) [0]Добрый вечер!
Помогите пожалуйста с домашкой.
Изучаем функцию FileOpen.
Пишу так:
if FileExists("C:\new.txt")then
sysutils.FileOpen("C:\new.txt",fmOpenRead)else
showmessage("файла нет");
Но ничего не происходит, в чем ошибка?
← →
nort (2006-01-27 21:03) [1]> Но ничего не происходит
var
hfile: THandle;
hfile := sysutils.FileOpen(... // получаем хэндл окрытого файла
// потом читаем
А что должно, по-вашему, произойти?
← →
mozgan (2006-01-27 21:07) [2]Я так понимаю, что должен запуститься файл (в блокноте открыться).
Я сейчас исправил на...
procedure TForm1.Button1Click(Sender: TObject);
var
hfile: THandle;
begin
if FileExists("C:\new.txt")then
hfile :=sysutils.FileOpen("C:\new.txt",fmOpenRead)else
showmessage("файла нет");
end;
Что-то опять ничего нет...
← →
Erudit (2006-01-27 21:09) [3]А я если четно не свосем врубился.
У меня тоже не получилось.
Можно по подробнее?
← →
guitarist (2006-01-27 21:10) [4]Я когда только знакомился с программированием, считал, что Open открывает файл как Windows, т.е. картинка открывается как картинка итп.
Если автор тоже так читает, то на самом деле FileOpen открывает файл для записи, чтения, ты с ним можешь работать, как с куском памяти (условно говоря). Если автор так не считал, то извиняюсь, но я знаю -- это частая проблема среди моих друзей.
← →
Erudit (2006-01-27 21:15) [5]Я вооще-то именно таки считаю :(((
Но я не могу понять, как именно можно открыть файл.
Если что у меня спиок файло в формате txt, но как открыть - не доходит :((
Стыдно аж на форуме торчать, но желание понять - огромное!
← →
guitarist (2006-01-27 21:22) [6]Попробуй (не забудь uses ShellApi)
ShellExecute(Application.Handle, "open", "cmd.exe",Pchar("/c C:/example.txt"), nil, SW_Hide);
Не лучший вариант, но другой вспоминать лень :)
← →
Erudit (2006-01-27 21:27) [7]Не лучший вариант, но другой вспоминать лень :)
Глупый вопрос, наверное задал?
← →
nort (2006-01-27 21:41) [8]если в Блокноте Windows, то вот:
uses
ShellApi;
procedure OpenTxt(FileList: TStrings);
var
i: Integer;
begin
for i := 0 to FileList.Count -1 do
ShellExecute(0,"open",PChar(FileList.Strings[i]),nil,nil,SW_NORMAL);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
with OpenDialog1 do
begin
Filter := "Text files (*.txt)|*.txt";
if Execute then
OpenTxt(Files);
end;
end;
← →
nort (2006-01-27 22:05) [9]Прочитать файл в Memo1
procedure TForm1.Button1Click(Sender: TObject);
var
hfile: tHandle;
Buffer: PChar;
FileSize: Integer;
begin
with OpenDialog1 do
begin
Filter := "Text files (*.txt)|*.txt";
if not execute then exit;
hfile := FileOpen(FileName,fmOpenRead);
if hFile = 0 then exit;
FileSize := GetFileSize(hfile,nil);
GetMem(Buffer,FileSize);
FileRead(hfile,Buffer^,FileSize);
Memo1.Text := Buffer;
FreeMem(Buffer);
FileClose(hfile);
end;
end;
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.02.12;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.038 c