Константы в Pascal.

Иногда, бывает так, что у нас в программе встречаются величины, которые не меняются в процессе выполнения программы (т.е. фактически они противоположность переменных). Такие величины называются константами. Константы указываются в специальном ...

Строки в Паскаль.

Тип данных String (строковый тип) используется в Паскаль для обработки текстов. Если в одну переменную типа Char можно записать лишь один символ, то в переменную типа String можно записать до 255 символов.

Функции LENGTH и CONCAT.

Функция Length возвращает в качестве значения длину строки. Например, если в строковой переменной «stroka» записано слово «Pascal», то Length(stroka) будет равно 6. Эта операция аналогична операции Ord(stroka[0]), которую мы разбирали в 1-м уроке. ...

Циклы и массивы

Арифметический цикл с рекуррентной зависимостью.

Многие циклические вычислительные процессы используют рекуррентные зависимости при решении различных математических задач.

Массив символов.

Одномерный массив символов по своим свойствам существенно отличается от всех остальных массивов языка Паскаль. Свойства одномерного массива символов приближены к свойствам коротких строк (String).

Типы данных, которые мы рассматривали в прошлых уроках, обладают одним существенным недостатком. Они не приспособлены для долговременного хранения информации.  Возьмем, например, такой тип как Запись. Мы можем внести в программу множество различных данных (с клавиатуры в процессе выполнения программы), однако, после закрытия программы все эти данные исчезнут. При повторном запуске программы нам по новой придется вводить информацию о цвете автомобиля, его марке, пробеге, дате выпуска и т.д. А если нам необходимо ввести информацию о нескольких сотнях автомобилях? Не будем же мы каждый раз при новом запуске программы вводить всю информацию по-новому. Конечно же, не будем. Для долговременного хранения информации на компьютере в языке программирования Pascal используют файловый тип.

 Файлом называют область во внешней памяти компьютера, которая обладает определенными признаками:

  • файл имеет имя
  • размер файла ограничен лишь емкостью устройства внешней памяти
  • файл содержит компоненты одного типа.

Файлы бывают 3-х видов: текстовые файлы, типизированные файлы и  нетипизированные файлы.
В этой статье мы научимся открывать с помощью Паскаля текстовые файлы и выводить их содержимое на экран.

Открытие текстового файла для чтения.

Для того чтобы открыть текстовый файл, его сначала нужно создать. Поэтому в директории C:\FPC\2.2.2\bin\i386-win32\Programs создаем файл с названием «text» и расширением «txt». В этом файле записываем какое-нибудь слово, например, «pascal».

fayjlih v paskalj

Далее набираем программу.



Program file1;
Uses crt;
var fl:text;
str:string;
begin
clrscr;
assign (fl, 'programs\text.txt');
reset (fl);
read (fl,str);
write(str);
close(fl);
readln
end.



Строка №3. Записываем переменную «fl» и указываем для нее тип Text. Text - стандартный текстовый тип файла. Переменные этого типа используются для хранения текстовой информации. Переменная «fl» называется файловой переменной и служит для связи программы с текстовым файлом. На этом этапе главное запомнить, что любые файловые переменные, предназначенные для работы с текстовыми файлами, должны иметь тип данных Text.

Строка №4. Записываем переменную «str» и указываем для нее тип данных String. Эту переменную мы будем использовать для чтения строк из файла.

Строка №7. Для того чтобы текстовый файл (text.txt, созданный нами ранее) стал доступен программе, его необходимо связать с файловой переменной («fl»). Это осуществляется с помощью стандартной процедуры Assign. Записываем процедуру Assign, затем в круглых скобках указываем переменную, и через запятую в апострофах указываем путь к нашему файлу «text.txt». Теперь посредством файловой переменной «fl» мы можем управлять файлом «text.txt».

Строка №8. Здесь происходит  инициация файла. Инициация файла – это открытие файла для чтения, записи либо для чтения и записи одновременно. Процедура Reset говорит нам о том, что файл открывается только для чтения. В скобках после слова Reset указывается файловая переменная «fl». Т.к. эту переменную мы связали с текстовым файлом «text.txt», то в результате процедуры Reset этот текстовый файл будет открыт для чтения.

Строка №9. Для того чтобы получить доступ к записям, хранящимся в файле, используются процедуры Read, Readln, Write, Writeln. В нашем примере для чтения записи из файла используется процедура Read. Записываем процедуру Read, далее в скобках указываем название файловой переменной и через запятую название строковой переменной. В результате действия процедуры Read из файловой переменной «fl» (как вы помните, в этой переменной хранится текстовая информация из файла «text.txt», т.е. слово «pascal») будет прочитана информация (слово «pascal») и эта информация будет записана в строковую переменную «str».

Строка №10. Выведем на экран значение строковой переменной «str». Т.е. на экран выведется слово «pascal».

Строка №11. Стандартная процедура закрытия файла, указанного в скобках после слова Close.

fayjlih v paskalj.

fayjlih v paskalj..


Дополнение к материалу.

1.  Правила для составления имен файлов.

  • Имя файла содержит не более 8 символов.
  • Символы могут содержать прописные и строчные буквы латинского алфавита, цифры, а также символы «!», «@», «#», «$», «%», «^», «&», «()», «'», «-», «;»
  • Имя файла может начинаться с любого из вышеперечисленных символов, цифры, строчной или прописной буквы латинского алфавита.
  • За именем файла может следовать расширение, которое отделяется от имени точкой и может содержать не более 3-х символов.

2. В нашем примере мы поместили текстовый файл в папке «programs». Вообще файл можно разместить в любом месте на компьютере, но тогда необходимо указывать полный путь к этому файлу в строке №7.


Предыдущая статья : Записи с вариантами.

Оглавление : Уроки Паскаль. Файлы.

Следующая статья : Файлы в Паскаль (часть 2).


Комментарии  

 
+2 # MrSmmiT 10.05.2012 07:06
Скажите пожалуйста, как сделать регистронезавис имый поиск? Используя up key и low key?
 
 
 
 
-2 # MrSmmiT 27.05.2012 15:38
Спасибо! Есть еще вопрос. :-) Есть типизированный файл с записями, их нужно отсортировать с помощью списка.
Вот моя попытка, (к сожалению не рабочая):
type opisanie= record
model: string[20];
ves: integer;
tip_corp: string[20];
diag_d: string[5];
dif: string[10];
f_mem: string[5];
cam: string[10];
ovpam: integer;
end;
type nex=^element;
element=record
zap:opisanie;
next:nex;
end;
function insort(l: nex): nex;
function ins(a: nex; l :nex): nex;
begin
a^.next:=nil;
if l=nil then
insort:=a
else
if a^.zap
 
 
-1 # MrSmmiT 27.05.2012 15:44
[quote name="MrSmmiT"]
function insort(l: nex): nex;
function ins(a: nex; l :nex): nex;
begin
a^.next:=nil;
if l=nil then
insort:=a
else
if a^.zap
 
 
+1 # MrSmmiT 27.05.2012 15:50
Почему-то процедура вся не пишется, поэтому вот: programm.txt
 
 
-1 # Ростик 26.01.2013 10:49
как прочесть 1-й елемент файла?
 
 
0 # Салам алейкум 31.01.2013 05:58
смотришь на первый элемент и читаешь его! все оч просто
 
 
+1 # кисуля 31.01.2013 06:02
#Салам алейкум, спасибо, ты мне очень помогла !!!
 
 
-3 # Салам алейкум 31.01.2013 05:53
:sad: :-| :-| :-| :-| :-| :-| :-| :-| :-| айм э мазафака щит
 
 
0 # макс 16.11.2014 11:52
мне нужно текст программировани я пример
var что делать?
 
 
-1 # 123 01.07.2016 09:20
:D :D
 
 
0 # qqqq 25.10.2017 12:39
как зделать щоб помножить у файли пж скажить!!!!!!!! !!1 :zzz :zzz :zzz :zzz :zzz
 
 
-1 # qqqq 25.10.2017 12:40
И как додать 1 у файле и вивести ето на мове паскаль пж скажить :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz
 
   ГлавнаяПаскальФайлы в ПаскальФайлы в Паскаль.