Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.16;
Скачать: CL | DM;

Вниз

Работа с текстовыми файлами   Найти похожие ветки 

 
KillOfCats   (2004-04-28 16:15) [0]

при выполнении:
var F: TextFile;
begin
AssignFile(F,"FileName.txt");
Reset(F);
Write (F, S);
CloseFile(F);
end;

выдает ощибку "I/O error 105"

Как правильно?
`:[]  ...изиняюсь за тупые вопрсы


 
WebErr ©   (2004-04-28 16:19) [1]


> Reset(F);

Reset - для чтения, Rewrite - для перезаписи, Assign - для добавления.


 
Андрей Сенченко ©   (2004-04-28 16:19) [2]

В том же учебнике, из которого это взято написано :

{$I-}
AssignFile(F,"FileName.txt");
Reset(F);
{$I+}
If IORESULT ...

А вообще-то следует проверять файл на существование прежде чем открывать его Reset-ом


 
KillOfCats   (2004-04-28 16:21) [3]

Файл существует и процесс чтения происходит нормально:

var F: TextFile;
   s:string;
begin
AssignFile(F,"FileName.txt");
Reset(F);
Read(F, S);
CloseFile(F);
end;


 
WebErr ©   (2004-04-28 16:21) [4]

Ой, то есть Append - для добавления - остальное правильно.
Так что для Write/Writeln(F,...) нужен либо Rewrite, либо Append.


 
uny   (2004-04-28 16:25) [5]

s в первом случае в var записана?


 
KillOfCats   (2004-04-28 16:26) [6]

Спасибо WebErr!!!


 
KillOfCats   (2004-04-28 16:27) [7]

Удалено модератором


 
WebErr ©   (2004-04-28 16:44) [8]


> KillOfCats   (28.04.04 16:26) [6]

Не за что, это даже не Делфи - это отголосок Turbo Pascal переделанный с учётом новых имён. Теперь Text - это TextFile, Assign - это AssignFile, а Close - это CloseFile, зачем столько гемора? Никакого уважения к предкам!


 
Anatoly Podgoretsky ©   (2004-04-28 16:56) [9]

Предки были неправы


 
WebErr ©   (2004-04-28 17:08) [10]

Не нам судить предков.
Тогда они были более чем правы.
Благодаря Им Turbo Pascal обскакал по популярности Quick Basic.
Тогда было важно, чтобы все имена были предельно короткие.
(Если посмотрите стандарт языка С Керригана и Ричи - увидите, насколько короткими могут быть операторы!)
8)


 
Anatoly Podgoretsky ©   (2004-04-28 17:12) [11]

Мне твоя забота о длине идентификаторов совсем не понятна, ни тогда ни сейчас. А вот за последствия такой борьбы страшно.


 
Андрей Сенченко ©   (2004-04-28 17:15) [12]

Anatoly Podgoretsky ©   (28.04.04 17:12) [11]

Тогда - понятна. Моей первой машиной был Нейрон И9К66 ( по-моему так ) без винта с двумя дисководами 5.25, понимавшимитолько диски по 360К


 
WebErr ©   (2004-04-28 17:26) [13]


> Anatoly Podgoretsky ©   (28.04.04 17:12) [11]

Don"t worry - я не буду бороться с Delphi по поводу идентификаторов - мне моего шефа вполне хватает!
И уж тем более не будет сабжа на тему long names vs short names. А ля private vs protected.

> Андрей Сенченко ©   (28.04.04 17:15) [12]

И какого было печатать длинное имя переменной, используя "глупые" мониторы (ещё до VGA!!!).



Страницы: 1 вся ветка

Текущий архив: 2004.05.16;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.029 c
1-1083068196
P_Aleks
2004-04-27 16:16
2004.05.16
Потоки и формы


8-1077455594
Iks
2004-02-22 16:13
2004.05.16
Рабочий стол


14-1082631749
Knight
2004-04-22 15:02
2004.05.16
Можно ли в XP сделать одну запись, типа, Default...


1-1082932406
Мыш
2004-04-26 02:33
2004.05.16
Перестал компилироваться пакет


9-1073250311
DrOne
2004-01-05 00:05
2004.05.16
Дайте ссылок по QuadTree