![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
запись в файл, ошибка [D6, WinXP]
chuk © (2004-11-10 14:24:00)var
out_s : string ;
f : textfile ;
begin
out_s := '1|2|3' ;
AssignFile (f, 'simple.dat') ;
Reset(f) ;
WriteLn(f, out_s) ;
CloseFile(f) ;
end;
при попытке записи в файл ругаетсяя на WriteLn и говорит: 'I/O Error 105'. Всё вроде делаю по правильно (по книге), а не получается!!!! файл simple.dat существует.
kirov_igor (2004-11-12 14:53:00) [1]AssignFile (f, 'C:\simple.dat') - в общем укажи полный путь до файла твоего
Anatoly Podgoretsky (2004-11-12 14:18:00) [2]1. это метод, а процедура
2. Write(f, s);
3. WriteLn(f, s);
Zandrey (2004-11-12 14:15:00) [3]
>
> MBo ©
> Amoeba © (12.11.04 11:21) [15]
Тогда почему не получается записать string,а string[2<Length<255]
- все нормальна?
Напишите фрагмент при помоши медота write().
kirov_igor (2004-11-12 12:17:00) [4]а где файл то лежит ?
Vlchel (2004-11-12 12:06:00) [5]Господа природу не обманеш. Если файл отркыт с помощью Reset то из него можно только читать информацию.
p.s. Учтите в книгах тоже могут быть ошибки и опечатки. Часть вносится при редактировании. Но и авторы "умных" книг не всегда блещут интелектом и знаниями.
Amoeba (2004-11-12 11:21:00) [6]
> Zandrey © (11.11.04 17:50) [12]
>
> > Amoeba © (10.11.04 15:54) [7]
>
>
> > И с чего ты это взял?
>
> Поскольку я зная в файл методом Write() строчку с терминальным
> нулём нельзя записать (а тип string с терминальным нулём
> в конце)
Это называется "Слышал звон ..."
MBo (2004-11-11 18:24:00) [7]>Zandrey © (11.11.04 17:50) [12]
>Поскольку я зная в файл методом Write() строчку с терминальным нулём нельзя записать
Не все с этим согласятся ;)
Плохиш (2004-11-11 18:16:00) [8]
> Anatoly Podgoretsky © (10.11.04 20:10) [10]
> Открываем справку по I/O errors и тогда точно наступит тебе
> просветление.
Да, там находим текст ошибки 105 и понимаем, что об этом-то и написано в справке по reset ;-)
Zandrey (2004-11-11 17:50:00) [9]
> Amoeba © (10.11.04 15:54) [7]
> И с чего ты это взял?
Поскольку я зная в файл методом Write() строчку с терминальным нулём нельзя записать (а тип string с терминальным нулём в конце)
Zandrey (2004-11-11 17:48:00) [10]
> Amoeba © (10.11.04 15:54) [7]
Anatoly Podgoretsky (2004-11-10 20:10:00) [11]Открываем справку по I/O errors и тогда точно наступит тебе просветление.
Плохиш (2004-11-10 16:59:00) [12]
> chuk (10.11.04 14:42) [4]
> FileMode стоит 2 по умолчанию, должно и с Reset писать в
> файл
Открываем справку по reset и читаем всё подробно и до последней строчки и наступит тебе просветление.
Symb (2004-11-10 16:42:00) [13]А файл simple.dat случайно не read-only?
Amoeba (2004-11-10 15:54:00) [14]
> Zandrey © (10.11.04 14:47) [6]
> Попробуй out_s:String определить как out_s:string[255],
> так как файл,кажись, не поддержует type string.
И с чего ты это взял? Если кажется, перекреститься надо.
Zandrey (2004-11-10 14:47:00) [15]Попробуй out_s:String определить как out_s:string[255], так как файл,кажись, не поддержует type string.
Digitman (2004-11-10 14:42:00) [16]
> chuk (10.11.04 14:41) [3]
> поменяны имена переменных (их значение) и файла
ой не ври.
chuk (2004-11-10 14:42:00) [17]FileMode стоит 2 по умолчанию, должно и с Reset писать в файл
chuk (2004-11-10 14:41:00) [18]да это и есть пример, только поменяны имена переменных (их значение) и файла
Igorok (2004-11-10 14:40:00) [19]вместо Reset(f) используй Append(f) или Rewrite(f), т.к. Reset(f) открывает файл только для чтения
Digitman (2004-11-10 14:36:00) [20]
> Всё вроде делаю по правильно (по книге)
вот именно - "вроде"
или книгу - "фтопку"
приведи соотв.фрагмент "книги".