Пользователь вводит с клавиатуры имя файла. Его надо открыть. А если он не существует на диске? Программа генерирует ошибку и завершает работу. На Делфи все просто, а вот на Паскале...
Как обработать эту ошибку ввода-вывода? ???
			
			
					
		1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК ! 
4. НЕ используйте форум для личного общения! 
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел! 
![]() ![]()  | 
	
| WebGirl | 
                        
			
			  
			
				 Сообщение
					#1				
			 
		 | 
	
| 
        	
        		 Гость  | 
       
			
			 Пользователь вводит с клавиатуры имя файла. Его надо открыть. А если он не существует на диске? Программа генерирует ошибку и завершает работу. На Делфи все просто, а вот на Паскале... 
			
			
					
		Как обработать эту ошибку ввода-вывода? ???  | 
	
| Clane | 
                        
			
			  
			
				 Сообщение
					#2				
			 
		 | 
	
| 
        	
        		 Гость  | 
       
			
			 IoResult. Если эта функция возвращает 0, значит файл не существует. Вот небольшой пример : 
			
			
					
		var f: file of char; begin assign(f,'my_file.dat'); {$I-} {отключаем контроль ошибок ввода-вывода} reset(f); {$I+} if IOResult<>0 then .....{файл не существует} else .... {файл существует} end.  | 
	
| AlaRic | 
                        
			
			  
			
				 Сообщение
					#3				
			 
		 | 
	
| 
        	
        		 ... ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 347 Пол: Мужской Репутация:    3           	 | 
       
			
			 Кто бы знал как мне приятно видеть на форуме представительниц слабого пола    
			
			
					
		В вышестоящем примере достаточно заменить reset(f) на rewrite(f) - файл автоматически будет создан на диске....  | 
	
| trminator | 
                        
			
			  
			
				 Сообщение
					#4				
			 
		 | 
	
| 
        	
        		 Четыре квадратика ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 579 Пол: Мужской Репутация:    4           	 | 
       
			
			 Цитата В вышестоящем примере достаточно заменить reset(f) на rewrite(f) - файл автоматически будет создан на диске.... Ага, зато если файл существует, он будет стерт. Может, его только прочитать надо, а не писАть в него ;) -------------------- Закон добровольного труда Зимерги: 
					
		Люди всегда согласны сделать работу, когда необходимость в этом уже отпала  | 
	
| AlaRic | 
                        
			
			  
			
				 Сообщение
					#5				
			 
		 | 
	
| 
        	
        		 ... ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 347 Пол: Мужской Репутация:    3           	 | 
       
			
			 Цитата Ага, зато если файл существует, он будет стерт. Может, его только прочитать надо, а не писАть в него ;) Согласен!  | 
	
![]() ![]()  | 
	
 
  | 
		Текстовая версия | 4.11.2025 18:49 |