Tekstovye файлове, тяхното описание и основните разлики от въведените файлове

Наред с описаните видове Паскал файл има средства за взаимодействие с малко по-различна структура файлове, така наречените текстови файлове. Въвеждането на множество текстови файлове нарушава хармонията на език, но позволява използването на Паскал в програмирането на широк клас проблеми с нечислова характер и свързани с обработката на текстова информация.

В много версии на езика могат да съхраняват файлове на диск като символни данни. Когато четете даден файл в паметта на героите на машина файлове се превръща в тип данни, който е обявен в програмата. файлове символни данни се наричат ​​текстови файлове. Текстови файлове са от тип текст.

Структурата на файл структура текст, различен от конвенционалния файл (което е по същество линейна последователност от елементи от същия тип), че съдържанието на текстовия файл се разглеждат като последователност от линии с различна дължина, разделени от специална комбинация, наречен "край на линия". Обикновено, тази комбинация е изработена от управляван код "връщане" (CR, връщане на каретката, символ # 13), за които е възможно да има контрол код "нов ред" а (LF, нов ред, символ # 10). Знак на края на линията се натискане на клавиша за нов ред.

Текстов файл завършва със специален код "край на файл" (на # 26). В повечето случаи, познаване на специфичната кодирането на контролни знаци, не е задължително да се дължи на наличието на файлови операции, автоматично като се вземат предвид тези герои.

По този начин, текстовия файл е структурно по-подобен на "файл от байтове" (файл на байт) с тази разлика, че в нея, в допълнение към съдържанието на информацията, символи, специално предназначение намерен.

Тя може да бъде схематично представена както следва:

Всеки файл на диск, че са свързани с променлива файл, който е описан в съответствие с типа на файла на диска. Представители на текстовия файл в Паскал-Програмата е променлива, тип на файла, който трябва да бъде описана с посочване на стандартен тип текст:

Var
Текстов файл. текст;

Забележка. Word текст не е запазена дума, и се счита за стандартен идентификатор тип, заедно с идентификатори число, реално, и т.н.

Достъп до преписката в бъдеще минава през променлива файл.

Освен това достъпът до който искате да отворите файла. Отворете всеки файл, който може да чете и пише. За да направите това, има нулиране процедура, пренаписване.

Например, нека диска, за да създадете текстов файл text.txt.

За описание на Turbo Pascal и задължително файл променлива е с text.txt на файл, той ще изглежда така:

присвоява ([файл. транс.], [пълния път до файла на диска]) -свързващ дисково устройство с променлива файл е от тип текст.

Забележка. възлага на процедурата не трябва да се използва за отваряне на файла.

Когато името на файла на диска не е посочено, параметърът F е свързан към стандартния вход / изход. Ако е празно име, след поканата за нулиране (е) е да сочи към стандартния входен файл и след призив да пренапише (е) е с точка на стандартния изходния файл.

нулиране ([файл променлива]) - отваря файла за четене.

Въвеждане и извеждане на текстови файлове, се подчинява на същите общи правила, както за обикновените печатни файлове; Въпреки това, има няколко важни функции.

Първо, един текстов файл не може да работи едновременно и вход и изход. Това означава, че след откриването на процедура за нулиране на текстов файл може само да чете информация от даден файл, след пренаписване на процедура - само запис във файла.

На второ място, обмен на текстови файлове винаги са строго последователни, това е, след като е прочел от файл на елемент N следващата операция четене, ще дам номера на елемент N + 1. С други думи, директен достъп до всеки елемент на текстовия файл не е възможно; за текстови файлове не се допускат разговори търси, FilePos, FileSize.

С четене на файл разбере въвеждане на данни от външен файл, съхранен на диска, в паметта на машината. данни на файла е на разположение на програмата. Външният файл, от който се чете данни, често се споменава като входния файл.

Основната техника обмен с текстови файлове е характер, ориентирани към входа и на изхода. Когато това е направено четене или записване на всички знаци, информационни и специални.

Ние показваме една проста програма, която извършва четене на текст. Тази програма показва поредица от символни кодове, представляващи text.txt файл.

Друга функция работи с текстови файлове, е възможността за директен обмен на стойностите на различни видове базови (за параметър тип файл обикновен напечатан четат и пишат трябва да съответства на типа на база файл). Например, един текстов файл може да бъде zapisat6 като цяло или реално число. По този начин вътрешното си представяне автоматично се превръща в една линия на героите, които са образ на този номер.

Помислете за една проста програма, която чете от текстов файл от цели числа и печат само четни числа.

Задача. Напишете програма, която ви позволява да създадете текстов файл, съдържащ

  • тип цяло число;
  • реалния вид;
  • булева стойност.

За по-горе случаи, пише произволни данни в текстов файл на езика, има допълнителни функции, които са в размер на поле за въвеждане на работни места. Ако след записването на една променлива или израз, за ​​да поставите символа на дебелото черво, а след него - всеки израз от тип цяло число, то стойността на продукцията, ще се даде поле, чийто размер (брой знаци) ще бъде равна на стойността на изразяване. Следващият тривиално програмата демонстрира ефекта на индекса на поле:

Задача. Dial програмата ще завърши своето оттегляне от съдържанието на текстов файл на екрана. Да анализира резултатите от програмата.

Управление на ценностите на разположения в текстови файлове е много удобен за формирането на структурирани файлове (списъци, таблици и т.н.), тъй като, ако изображението е по-малка от стойността на размера на полето, винаги е "натиснат" правото му ръб.

В допълнение, за реалния вид има допълнителна функция, която ви позволява да показва броя на фиксирана точка формат, който по-ясно в сравнение с плаваща запетая формат, която се предоставя по подразбиране. Ако размерът на областта за задаване на показалеца през дебелото черво е друг израз на типа число, то ще се тълкува като индикация на броя на позициите за дробна част от номера.