Учебники

Rexx — File I / O

Rexx предоставляет ряд методов при работе с I / O. Rexx предоставляет более простые классы для обеспечения следующих функций для файлов.

  • Чтение файлов
  • Запись в файлы
  • Видя, является ли файл файлом или каталогом

Функции, доступные в Rexx для файлового ввода-вывода, основаны как на строковом, так и на символьном вводе, и мы рассмотрим функции, доступные для обоих, подробно.

Давайте рассмотрим некоторые файловые операции, которые Rexx предлагает. Для целей этих примеров мы будем предполагать, что существует файл с именем NewFile.txt, который содержит следующие строки текста:

Example1

Example2

Example3

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

Чтение содержимого файла строка за раз

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

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

LineIn

Этот метод возвращает строку из текстового файла. Текстовый файл — это имя файла, предоставляемое в качестве входного параметра функции.

Синтаксис

linein(filename) 

Параметр

  • filename — это имя файла, из которого нужно прочитать строку.

filename — это имя файла, из которого нужно прочитать строку.

Возвращаемое значение — этот метод возвращает одну строку файла за раз.

Пример

/* Main program */ 
line_str = linein(Example.txt) 
say line_str

Приведенный выше код довольно прост в том, что имя файла Example.txt предоставляется функции linein. Затем эта функция читает строку текста и предоставляет результат переменной line_str .

Вывод. Когда мы запустим указанную выше программу, мы получим следующий результат.

Example1

Чтение содержимого файла за один раз

В Rexx чтение всего содержимого файла может быть достигнуто с помощью оператора while. Оператор while будет читать каждую строку, одну за другой, пока не будет достигнут конец файла.

Пример того, как этого можно достичь, показан ниже.

/* Main program */ 
do while lines(Example.txt) > 0  
line_str = linein(Example.txt) 
say line_str 
end 

В приведенной выше программе необходимо отметить следующее:

  • Функция lines читает файл Example.txt .

  • Функция while используется для проверки наличия дополнительных строк в файле Example.txt.

  • Для каждой строки, прочитанной из файла, переменная line_str содержит значение текущей строки. Затем он отправляется на консоль в качестве вывода.

Функция lines читает файл Example.txt .

Функция while используется для проверки наличия дополнительных строк в файле Example.txt.

Для каждой строки, прочитанной из файла, переменная line_str содержит значение текущей строки. Затем он отправляется на консоль в качестве вывода.

Вывод. Когда мы запустим указанную выше программу, мы получим следующий результат.

Example1 
Example2 
Example3 

Запись содержимого в файл

Так же, как чтение файлов, Rexx также имеет возможность записи в файлы. Давайте посмотрим на функцию, которая используется для достижения этой цели.

оридор

Этот метод записывает строку в файл. Файл, в который должна быть записана строка, предоставляется в качестве параметра оператора lineout.

Синтаксис

lineout(filename) 

Параметр

  • filename — это имя файла, откуда должна быть записана строка.

filename — это имя файла, откуда должна быть записана строка.

Возвращаемое значение — этот метод возвращает состояние функции линейного выхода. Возвращаемое значение равно 0, если строка была успешно записана, иначе будет возвращено значение 1.

Пример

/* Main program */ 
out = lineout(Example.txt,"Example4") 

Вывод — всякий раз, когда запускается вышеуказанный код, строка «Example4» записывается в файл Example.txt .