Как читать и писать файлы в Perl

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

Чтение файла в Perl

Для работы с примером из этой статьи вам понадобится файл для чтения сценарием Perl. Создайте новый текстовый документ с именем data.txt и поместите его в тот же каталог, что и Perl программа ниже.

В самом файле просто введите несколько имен - по одному в строке:

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

Затем создайте дескриптор файла с именем MYFILE, откройте его и укажите его в файле data.txt.

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

instagram viewer

Внутри цикла используйте функцию chomp, чтобы очистить символы новой строки от конца каждой строки, а затем выведите значение $ _, чтобы показать, что оно было прочитано.

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

Запись в файл в Perl

Возьмите тот же файл данных, с которым вы работали учимся читать файл в Perl. На этот раз вы напишите ему. Чтобы записать файл в Perl, вы должны открыть дескриптор файла и указать его на файл, который вы пишете. Если вы используете Unix, Linux или Mac, вам также может понадобиться перепроверить ваши права доступа к файлу, чтобы узнать, разрешено ли вашему Perl-сценарию записывать данные в файл данных.

Если вы запустите эту программу, а затем запустите программу из предыдущего раздела по чтению файла в Perl, вы увидите, что она добавила еще одно имя в список.

Фактически, каждый раз, когда вы запускаете программу, она добавляет еще одного «Боба» в конец файла. Это происходит потому, что файл был открыт в режиме добавления. Чтобы открыть файл в режиме добавления, просто добавьте к имени файла префикс >> символ. Это сообщает функции open, что вы хотите записать в файл, прикрепив больше к его концу.

Если вместо этого вы хотите перезаписать существующий файл новым, вы используете > один больше, чем символ, чтобы сообщить открытой функции, что вы хотите каждый раз новый файл. Попробуйте заменить >> на>, и вы увидите, что файл data.txt сокращается до одного имени - Боба - каждый раз, когда вы запускаете программу.

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

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

instagram story viewer