Составить программу которая печатает заданное слово начиная с последней буквы java

Обновлено: 04.07.2024

Я использую Java для получения String ввода от пользователя. Я пытаюсь сделать первую букву этого ввода заглавной.

Я попробовал это:

что привело к этим ошибкам компилятора:

Несоответствие типов: невозможно преобразовать InputStreamReader в BufferedReader

Невозможно вызвать toUppercase () для примитивного типа char

@Pontus - я не согласен. Для ввода «abcd» OP хочет вывод «Abcd». Кажется, довольно ясно, хотя вопрос мог бы быть лучше. символ является примитивным типом данных в Java. Вы не можете разыменовать примитивный тип данных с помощью оператора точки (.). Вы должны подстроку первого символа name.substring (0,1);

С вашим примером:

Я думаю, вам нужно -1 после str.length (), иначе вы выйдете за пределы. @dutt: Нет, на самом деле это тоже было прекрасно. Но модификация Рекина сделала его идеальным. ;) Commons Lang всегда лучше, чем писать свою собственную функцию, за исключением редких случаев, когда вы знаете лучше. Если вы не читали обыкновенный lang java doc в функции прописных букв, вам не следует писать свои собственные. Я использовал WordUtils, он также имеет ту же функцию, но он заглавными буквами всех слов в предложении. StringUtils.capitalize( "fred from jupiter" ); производит "Fred from jupiter" . Полегче . D WordUtils.capitalizeFully () работал для меня как очарование, так как он дает: WordUtils.capitalizeFully («я в порядке») = «Я в порядке»

Укороченный / более быстрый код версии для прописных букв первой буквы строки:

величина name IS "Stackoverflow"

Мне нравится это решение, потому что оно гарантирует, что остальная часть строки будет в нижнем регистре. Это то, что мне было нужно при преобразовании имен перечислений ALL_CAPS.

Шаг 1:

Импортируйте общую библиотеку Apache, поместив ее в build.gradle зависимости

Шаг 2:

Если вы уверены, что ваша строка состоит из строчных букв или все, что вам нужно, это инициализировать первую букву, позвоните напрямую

Если вы хотите убедиться, что только первая буква написана с заглавной буквы, например, сделав это для an enum , toLowerCase() сначала позвоните и имейте в виду, что NullPointerException если входная строка равна нулю.

Вот еще примеры, предоставленные Apache. это исключение бесплатно

Примечание:

WordUtils также включен в эту библиотеку, но не рекомендуется. Пожалуйста , не используйте это.

Спасибо. Я не могу поверить, что люди даже думают об использовании цикла for для такого рода задач @ Alvaro, в конце концов - люди используют цикл для этой задачи, проверьте исходный код apache. Это не означает, что люди не должны использовать хорошо проверенные решения. @YuriyChernyshov уверен, я имел в виду, что они не должны заново изобретать колесо для производственного кода по большей части WordUtils.capitalizeFully () работал для меня как очарование, так как он дает: WordUtils.capitalizeFully ("я прекрасен") = "Я в порядке" Я никогда не пойду за внешними библиотеками просто так How to capitalize the first letter of a String in Java? .

Ява:

просто вспомогательный метод для заглавных букв каждой строки.

После этого просто позвоните str = capitalize(str)

Котлин:

Будет выброшено исключение, если str NULL. Убедитесь, что строка не пуста и имеет по крайней мере один символ перед использованием. @attacomsian вы правы, я обновляю java-код, а для Kotlin вы можете использовать str? .capitalize ()

Что вы хотите сделать, это, вероятно, это:

(преобразует первый символ в верхний регистр и добавляет остаток исходной строки)

Кроме того, вы создаете устройство чтения входного потока, но никогда не читаете ни одной строки. Так name будет всегда null .

Это должно работать:

Здравствуй! Не могли бы вы объяснить, как реализовать это в моем проекте? Я вижу любую ссылку на скачивание файла в вашем URL. Спасибо Этот метод устарел. Пожалуйста, используйте StringUtils от commons-lang

Ниже решение будет работать.

Вы не можете использовать toUpperCase () на примитивном символе, но вы можете сначала сделать всю строку в верхний регистр, затем взять первый символ, а затем добавить к подстроке, как показано выше.

В вопросе он пытался использовать верхний регистр примитива, который не будет работать.

Самый короткий тоже:

Работал на меня.

Установите строку в нижний регистр, затем установите первую букву в верхний, как это:

затем заглавные буквы:

подстрока просто получает кусок большей строки, затем мы объединяем их вместе.

Как я понял, первая строка кода бесполезна, так как остальная часть строки в любом случае установлена ​​в нижний регистр.

Используйте этот метод, чтобы получить все первые буквы заглавными.

Вы также можете попробовать это:

Это лучше (оптимизировано), чем с использованием подстроки. (но не стоит беспокоиться о маленькой струне)

Вы можете использовать substring() для этого.

Но есть два разных случая:

Случай 1

Если String заглавная буква предназначена для чтения человеком, вам также следует указать локаль по умолчанию:

Краткое руководство по проверке того, содержит ли текст все буквы алфавита.

1. Обзор

В этом уроке мы увидим, как проверить, содержит ли строка все буквы алфавита или нет.

Мы обсудим три подхода.

Сначала мы смоделируем алгоритм, используя императивный подход. Затем будут использоваться регулярные выражения. И, наконец, мы воспользуемся более декларативным подходом с использованием Java 8.

Кроме того, мы обсудим Большую сложность принятых подходов.

2. Императивный алгоритм

Давайте реализуем императивный алгоритм. Для этого сначала создадим логический массив visited. Затем мы пройдем через входную строку символ за символом и пометим символ как посещенный.

Обратите внимание, что Верхний регистр и Нижний регистр считаются одинаковыми. Таким образом, индекс 0 представляет и А, и а, аналогично, индекс 25 представляет и Z, и z.

Наконец, мы проверим, все ли символы в посещенном массиве имеют значение true:

Обратите внимание, что существует множество способов оптимизации алгоритма, таких как удаление букв из набора и разрыв, как только Set пуст. Однако для целей упражнения этот алгоритм достаточно хорош.

3. Использование Регулярного Выражения

Используя регулярное выражение, мы можем легко получить те же результаты с помощью нескольких строк кода:

Здесь мы сначала исключаем все символы, кроме букв алфавита, из ввода . Затем мы удаляем дубликаты символов. Наконец, мы считаем буквы и убеждаемся, что у нас есть все, 26.

Несмотря на меньшую производительность, Большая сложность этого подхода также имеет тенденцию к O(n).

4. Поток Java 8

Используя функции Java 8, мы можем легко достичь того же результата более компактным и декларативным способом, используя методы Stream filter и distinct :

Большая-O-сложность этого подхода также будет O(n).

4. Тестирование

Давайте проверим счастливый путь для нашего алгоритма:

Здесь предложение содержит все буквы алфавита, следовательно, мы ожидаем true в результате.

5. Заключение

В этом уроке мы рассмотрели, как проверить, содержит ли строка все буквы алфавита .

Сначала мы увидели несколько способов реализовать это с помощью традиционного императивного программирования, регулярных выражений и потоков Java 8.

Составить программу, проверяющую совпадают ли первая и последняя буквы слова Х, введенного с клавиатуры.

Решение задачи строится на нахождении первой и последней букв слова при помощи операции копирования одного символа и дальнейшего сравнения букв между собой.

Запустите Turbo Pascal. В окне редактирования наберите текст программы:

Writeln ('Введите слово');

Then Writeln('Первая и последняя буквы совпадают')

Else Writeln ('Первая и последняя буквы не совпадают');

Задание 2. Подсчет количества букв

Составить программу, подсчитывающую количество вхождений буквы "а" в заданное слово Х, введенное с клавиатуры.

Writeln ('Введите слово');

If s<>0 Then Writeln ('Количество букв "а" в слове ', X, 'равно ',s)

Else Writeln ('Слово не содержит буквы а');

Задание 3. Слова - перевёртыши

Составить программу, проверяющую, является ли введенное с клавиатуры слово Х перевертышем.

var X,Y: String[15];

Writeln ('Введите слово Х');

For i:=d Downto 1 Do Y:=Y+Copy(X,i,1);

If X=Y Then Writeln ('Слово является перевертышем')

Else Writeln ('Слово не является перевертышем');

Задание 4. Замена букв в слове

Заменить в слове Х все буквы "а" на буквы "я".

var X,Y: String[15];

Writeln ('Введите слово Х');

Задание 5. Удаление символов в слове

Удалить из строки все "лишние" (парные) пробелы.

Writeln ('Введите строку');

if l=0 then Writeln ('Парных пробелов нет')

delete (s, pos (' ',s), 1);

Writeln ('Получена строка:');

Задание 6. Решение задач по теме

Номера задач задает преподаватель!

1. Составьте программу подсчета количества букв "к" в заданном слове Х.

2. Составьте программу, проверяющую, входит ли в данное слово сочетание букв "нн".

3. Составить программу, удаляющую из данного слова все буквы "о".

4. Составить программу, определяющую позицию первого вхождения буквы "т" в слово.

5. Составить программу, удваивающую каждую букву слова (Например, вместо слова "стол" должно получиться "ссттоолл").

6. Составить программу, удаляющую каждую нечетную букву слова.

7. Для каждого символа заданного слова указать, сколько раз он встречается в слове.

8. В заданном слове удалить символ "m" и подсчитать число удаленных символов.

9. В заданном слове подсчитать количество гласных букв.

10.В заданном слове заменить каждый символ "а", стоящий на четном месте, на символ "о".

11.Определить, заканчивается ли введенное слово гласной буквой.

12.Определить, превышает ли длина введенного слова заданное число.

13.Определить, является ли количество букв "о" в заданном слове четным или нечетным.

14.Проверить, есть ли в заданном слове две подряд идущие одинаковые буквы.

15.Определить, является ли длина введенного слова числом, кратным трем.

Контрольное задание

Вариант вашего задания задает преподаватель!

Отчет по заданию оформите в письменном виде!

Отчет должен содержать условия задачи, блок-схему алгоритма, текст программы, исходные данные и результаты.

1. Ввести текст, состоящий не менее чем из 14 слов, разделяющихся между собой запятыми. Изъять из текста все запятые.

2. Ввести текст, состоящий не более чем из 10 слов. Определить количество вхождений символов «to» в каждом слове.

3. Ввести текст, состоящий не более чем из 16 слов. В данном тексте заменить все буквы «а» на «о».

4. Ввести текст, состоящий не более чем из 15 слов. Из текста выделить все слова, которые начинаются с любого произвольно введенного символа.

5. Ввести текст, состоящий не менее чем из 12 слов. Определить наличие вхождений символов «no» в каждом слове текста.

6. Ввести текст, состоящий не менее чем из 13 слов, разделенных между собой точками. В данном тексте заменить все точки на запятые.

7. Ввести текст, состоящий не менее чем из 12 слов. Из данного текста выделить все слова, в которых присутствует символ «Е».

8. Ввести текст, состоящий не менее чем из 10 слов. Вставить в текст после каждого символа «к» символ «о».

9. Ввести текст, состоящий не менее чем из 13 слов. Выделить из текста все слова, которые имеют больше 5 символов, но менее 8.

10. Ввести текст, состоящий из слов и цифр. Подсчитать сколько цифр в тексте.

11. Ввести текст, состоящий из слов и цифр. Подсчитать сколько слов в тексте.

12. Ввести текст, состоящий не менее чем из 15 слов. Подсчитать количество слов, в которых присутствует символ «b» и заменить его на «f».

13. Ввести одно слово, состоящее не менее чем из 8 символов. Распечатать все части слова, начинающиеся с заданного символа.

14. Ввести текст, содержащий не менее 15 слов. Выделить из текста все слова, которые имеют пять символов, и начинаются с символа «R».

15. Ввести текст, состоящий из слов и цифр. Заменить в заданном тексте все цифры на символы «as».

16. Ввести текст, состоящий не менее чем из 13 слов. Определить количество вхождений символов «tol» в заданный текст и заменить их на символы «lot».

17. Ввести текст, состоящий не менее чем из 12 слов. Из текста выделить все слова, которые начинаются с того же символа, с которого начинается первое слово данного текста.

18. Ввести текст, состоящий не менее чем из 14 слов. Определить количество слов, которые начинаются и заканчиваются на один и тот же символ.

19. Ввести текст, состоящий не менее чем из 12 слов. Из текста выделить все слова, которые начинаются с того же символа, с которого начинается последнее слово заданного текста.

20. Ввести текст, состоящий не менее чем из 15 слов. Выделить из текста все слова, которые имеют длину 6 символов и начинаются на «С».

21. Ввести текст, состоящий не менее чем из 12 слов. Выделить из текста все слова, имеющие четное количество символов и начинающиеся с символа «D».

22. Ввести текст, состоящий не менее чем из 15 слов. Определить в каждом слове позицию вхождения символа «s».

23. Ввести текст, состоящий не менее чем из12 слов. Из данного текста выделить все слова, в которых присутствует символ «Е».

24. Ввести текст, состоящий не менее чем из 14 слов, разделяющихся между собой запятыми. Заменить все запятые на восклицательный знак.

25. Ввести текст, состоящий не менее чем из 14 слов. Вставить в текст после каждого символа «g» символ «о».

26. Ввести текст, состоящий из слов и цифр. Подсчитать сколько цифр в тексте, заменить все слова на число 100.

27. Ввести текст, состоящий из слов и цифр. Подсчитать сколько слов в тексте, заменить все числа на символы «ok!».

28. Ввести текст, состоящий не менее чем из 14 слов. Подсчитать количество слов длиной более 5 символов и начинающихся с символа «d».

29. Ввести текст, состоящий не менее чем из 15 слов. Определить количество вхождений символа «а» в каждом слове.

30. Ввести текст, состоящий не менее чем из 15 слов. Заменить все слова, которые начинаются с символа «c» на 1000.

Лабораторная работа №8.
Файлы

Цель работы: Изучить практические навыки работы с переменными файлового типа.

Тип-файл представляет собой последовательность компонент одного типа, расположенных на внешнем устройстве (например, на диске). Элементы могут быть любого типа, за исключением самого типа-файла. Число элементов в файле при описании не объявляется. Работа с физическими файлами происходит через так называемые файловые переменные.

Тип-файл можно описать непосредственно при введении файловых переменных:

Var Z: File Of Real;

Файловые переменные имеют специфическое применение. Над ними нельзя выполнять никаких операций (присваивать значение, сравнивать и т.д.). Их можно использовать лишь для выполнения операций с файлами (чтение, запись и т.д.).

Элементы файла считаются расположенными последовательно, то есть так же, как элементы линейного массива. Отличие состоит в том, что, во-первых, размеры файла могут меняться, во-вторых, способ обращения к элементам совсем другой: невозможно обратиться к произвольному элементу файла; элементы его просматриваются только подряд от начала к концу, при этом в каждый момент времени доступен только один элемент. Можно представить себе, что для каждого файла существует указатель, показывающий в данный момент на определенный компонент файла. После проведения операции чтения или записи указатель автоматически передвигается на следующий компонент.

Перед тем, как осуществлять ввод-вывод, файловая переменная должна быть связана с конкретным внешним файлом при помощи процедуры Assign:

Assign(<ф. п.>,<Имя файла>);

Здесь <ф. п.> - имя файловой переменной, <Имя файла> -строка, содержащая полное имя файла на внешнем носителе.

После объявления файл должен быть открыт одной из процедур:

Reset(<ф. п.>); - открывается существующий файл для чтения, указатель текущей компоненты файла настраивается на начало файла. Если физического файла, соответствующего файловой переменной не существует, то возникает ситуация ошибки ввода-вывода.

Rewrite(<ф. п.>); - открывается новый пустой файл для записи, ему присваивается имя, заданное процедурой Assign. Если файл с таким именем уже существует, то он уничтожается.

После работы с файлом он, как правило, должен быть закрыт процедурой

Close(<ф. п.>);

Важно!

Процедура закрытия обязательно должна выполняться для файла, в который производилась запись.

Для ввода информации из файла, открытого для чтения, используется оператор Read с небольшими изменениями:

Read(<ф. п.>, <Список ввода>);

При работе оператора происходит считывание данных из файла в переменные, имена которых указаны в списке ввода. Переменные должны быть того же типа, что и компоненты файла.

Вывод информации производит оператор

Write(<ф. п.>, <Список вывода>);

Данные из списка вывода заносятся в файл, открытый для записи.

Ниже приводится список основных процедур и функций, которые используются при работе с файлами.

Seek (<ф. п.>, <N компонента>) -процедура, которая смещает указатель файла к его компоненту с номером N. (Первый компонент файла имеет номер 0!).

Filesize (<ф.п.>) -функция, которая возвращает количество компонентов файла.

Filepos (<ф.п.>)- функция, которая возвращает порядковый номер компонента файла, который будет обрабатываться следующей операцией ввода-вывода.

Eof(<ф.п.>) -функция вырабатывает значение True, если файл окончен, и False - в противном случае.

Составить программу, проверяющую совпадают ли первая и последняя буквы слова Х, введенного с клавиатуры.

Решение задачи строится на нахождении первой и последней букв слова при помощи операции копирования одного символа и дальнейшего сравнения букв между собой.

Запустите Turbo Pascal. В окне редактирования наберите текст программы:

Writeln ('Введите слово');

Then Writeln('Первая и последняя буквы совпадают')

Else Writeln ('Первая и последняя буквы не совпадают');

Задание 2. Подсчет количества букв

Составить программу, подсчитывающую количество вхождений буквы "а" в заданное слово Х, введенное с клавиатуры.

Writeln ('Введите слово');

If s<>0 Then Writeln ('Количество букв "а" в слове ', X, 'равно ',s)

Else Writeln ('Слово не содержит буквы а');

Задание 3. Слова - перевёртыши

Составить программу, проверяющую, является ли введенное с клавиатуры слово Х перевертышем.

var X,Y: String[15];

Writeln ('Введите слово Х');

For i:=d Downto 1 Do Y:=Y+Copy(X,i,1);

If X=Y Then Writeln ('Слово является перевертышем')

Else Writeln ('Слово не является перевертышем');

Задание 4. Замена букв в слове

Заменить в слове Х все буквы "а" на буквы "я".

var X,Y: String[15];

Writeln ('Введите слово Х');

Задание 5. Удаление символов в слове

Удалить из строки все "лишние" (парные) пробелы.

Writeln ('Введите строку');

if l=0 then Writeln ('Парных пробелов нет')

delete (s, pos (' ',s), 1);

Writeln ('Получена строка:');

Задание 6. Решение задач по теме

Номера задач задает преподаватель!

1. Составьте программу подсчета количества букв "к" в заданном слове Х.

2. Составьте программу, проверяющую, входит ли в данное слово сочетание букв "нн".

3. Составить программу, удаляющую из данного слова все буквы "о".

4. Составить программу, определяющую позицию первого вхождения буквы "т" в слово.

5. Составить программу, удваивающую каждую букву слова (Например, вместо слова "стол" должно получиться "ссттоолл").

6. Составить программу, удаляющую каждую нечетную букву слова.

7. Для каждого символа заданного слова указать, сколько раз он встречается в слове.

8. В заданном слове удалить символ "m" и подсчитать число удаленных символов.

9. В заданном слове подсчитать количество гласных букв.

10.В заданном слове заменить каждый символ "а", стоящий на четном месте, на символ "о".

11.Определить, заканчивается ли введенное слово гласной буквой.

12.Определить, превышает ли длина введенного слова заданное число.

13.Определить, является ли количество букв "о" в заданном слове четным или нечетным.

14.Проверить, есть ли в заданном слове две подряд идущие одинаковые буквы.

15.Определить, является ли длина введенного слова числом, кратным трем.

Контрольное задание

Вариант вашего задания задает преподаватель!

Отчет по заданию оформите в письменном виде!

Отчет должен содержать условия задачи, блок-схему алгоритма, текст программы, исходные данные и результаты.

1. Ввести текст, состоящий не менее чем из 14 слов, разделяющихся между собой запятыми. Изъять из текста все запятые.

2. Ввести текст, состоящий не более чем из 10 слов. Определить количество вхождений символов «to» в каждом слове.

3. Ввести текст, состоящий не более чем из 16 слов. В данном тексте заменить все буквы «а» на «о».

4. Ввести текст, состоящий не более чем из 15 слов. Из текста выделить все слова, которые начинаются с любого произвольно введенного символа.

5. Ввести текст, состоящий не менее чем из 12 слов. Определить наличие вхождений символов «no» в каждом слове текста.

6. Ввести текст, состоящий не менее чем из 13 слов, разделенных между собой точками. В данном тексте заменить все точки на запятые.

7. Ввести текст, состоящий не менее чем из 12 слов. Из данного текста выделить все слова, в которых присутствует символ «Е».

8. Ввести текст, состоящий не менее чем из 10 слов. Вставить в текст после каждого символа «к» символ «о».

9. Ввести текст, состоящий не менее чем из 13 слов. Выделить из текста все слова, которые имеют больше 5 символов, но менее 8.

10. Ввести текст, состоящий из слов и цифр. Подсчитать сколько цифр в тексте.

11. Ввести текст, состоящий из слов и цифр. Подсчитать сколько слов в тексте.

12. Ввести текст, состоящий не менее чем из 15 слов. Подсчитать количество слов, в которых присутствует символ «b» и заменить его на «f».

13. Ввести одно слово, состоящее не менее чем из 8 символов. Распечатать все части слова, начинающиеся с заданного символа.

14. Ввести текст, содержащий не менее 15 слов. Выделить из текста все слова, которые имеют пять символов, и начинаются с символа «R».

15. Ввести текст, состоящий из слов и цифр. Заменить в заданном тексте все цифры на символы «as».

16. Ввести текст, состоящий не менее чем из 13 слов. Определить количество вхождений символов «tol» в заданный текст и заменить их на символы «lot».

17. Ввести текст, состоящий не менее чем из 12 слов. Из текста выделить все слова, которые начинаются с того же символа, с которого начинается первое слово данного текста.

18. Ввести текст, состоящий не менее чем из 14 слов. Определить количество слов, которые начинаются и заканчиваются на один и тот же символ.

19. Ввести текст, состоящий не менее чем из 12 слов. Из текста выделить все слова, которые начинаются с того же символа, с которого начинается последнее слово заданного текста.

20. Ввести текст, состоящий не менее чем из 15 слов. Выделить из текста все слова, которые имеют длину 6 символов и начинаются на «С».

21. Ввести текст, состоящий не менее чем из 12 слов. Выделить из текста все слова, имеющие четное количество символов и начинающиеся с символа «D».

22. Ввести текст, состоящий не менее чем из 15 слов. Определить в каждом слове позицию вхождения символа «s».

23. Ввести текст, состоящий не менее чем из12 слов. Из данного текста выделить все слова, в которых присутствует символ «Е».

24. Ввести текст, состоящий не менее чем из 14 слов, разделяющихся между собой запятыми. Заменить все запятые на восклицательный знак.

25. Ввести текст, состоящий не менее чем из 14 слов. Вставить в текст после каждого символа «g» символ «о».

26. Ввести текст, состоящий из слов и цифр. Подсчитать сколько цифр в тексте, заменить все слова на число 100.

27. Ввести текст, состоящий из слов и цифр. Подсчитать сколько слов в тексте, заменить все числа на символы «ok!».

28. Ввести текст, состоящий не менее чем из 14 слов. Подсчитать количество слов длиной более 5 символов и начинающихся с символа «d».

29. Ввести текст, состоящий не менее чем из 15 слов. Определить количество вхождений символа «а» в каждом слове.

30. Ввести текст, состоящий не менее чем из 15 слов. Заменить все слова, которые начинаются с символа «c» на 1000.

Лабораторная работа №8.
Файлы

Цель работы: Изучить практические навыки работы с переменными файлового типа.

Тип-файл представляет собой последовательность компонент одного типа, расположенных на внешнем устройстве (например, на диске). Элементы могут быть любого типа, за исключением самого типа-файла. Число элементов в файле при описании не объявляется. Работа с физическими файлами происходит через так называемые файловые переменные.

Тип-файл можно описать непосредственно при введении файловых переменных:

Var Z: File Of Real;

Файловые переменные имеют специфическое применение. Над ними нельзя выполнять никаких операций (присваивать значение, сравнивать и т.д.). Их можно использовать лишь для выполнения операций с файлами (чтение, запись и т.д.).

Элементы файла считаются расположенными последовательно, то есть так же, как элементы линейного массива. Отличие состоит в том, что, во-первых, размеры файла могут меняться, во-вторых, способ обращения к элементам совсем другой: невозможно обратиться к произвольному элементу файла; элементы его просматриваются только подряд от начала к концу, при этом в каждый момент времени доступен только один элемент. Можно представить себе, что для каждого файла существует указатель, показывающий в данный момент на определенный компонент файла. После проведения операции чтения или записи указатель автоматически передвигается на следующий компонент.

Перед тем, как осуществлять ввод-вывод, файловая переменная должна быть связана с конкретным внешним файлом при помощи процедуры Assign:

Assign(<ф. п.>,<Имя файла>);

Здесь <ф. п.> - имя файловой переменной, <Имя файла> -строка, содержащая полное имя файла на внешнем носителе.

После объявления файл должен быть открыт одной из процедур:

Reset(<ф. п.>); - открывается существующий файл для чтения, указатель текущей компоненты файла настраивается на начало файла. Если физического файла, соответствующего файловой переменной не существует, то возникает ситуация ошибки ввода-вывода.

Rewrite(<ф. п.>); - открывается новый пустой файл для записи, ему присваивается имя, заданное процедурой Assign. Если файл с таким именем уже существует, то он уничтожается.

После работы с файлом он, как правило, должен быть закрыт процедурой

Close(<ф. п.>);

Важно!

Процедура закрытия обязательно должна выполняться для файла, в который производилась запись.

Для ввода информации из файла, открытого для чтения, используется оператор Read с небольшими изменениями:

Read(<ф. п.>, <Список ввода>);

При работе оператора происходит считывание данных из файла в переменные, имена которых указаны в списке ввода. Переменные должны быть того же типа, что и компоненты файла.

Вывод информации производит оператор

Write(<ф. п.>, <Список вывода>);

Данные из списка вывода заносятся в файл, открытый для записи.

Ниже приводится список основных процедур и функций, которые используются при работе с файлами.

Seek (<ф. п.>, <N компонента>) -процедура, которая смещает указатель файла к его компоненту с номером N. (Первый компонент файла имеет номер 0!).

Filesize (<ф.п.>) -функция, которая возвращает количество компонентов файла.

Filepos (<ф.п.>)- функция, которая возвращает порядковый номер компонента файла, который будет обрабатываться следующей операцией ввода-вывода.

Eof(<ф.п.>) -функция вырабатывает значение True, если файл окончен, и False - в противном случае.

Читайте также: