SlideShare a Scribd company logo
1 of 10
File/Directory manipulation
Opening a File
• To read from a file, must use a file handle.
– by convention, all caps
• open a file (for reading):
– open FILE, “myfile.txt”;
• open file for writing:
– open OUTFILE, “>output.txt”;
• open file for appending:
– open APPFILE, “>>append.txt”;
Reading from a file
• open FILE, “myfile.txt”;
• $one_line = <FILE>;
• @all_lines = <FILE>;
– @all_lines get all remaining lines from
myfile.txt
– puts each line of file into one member of array
• remember chomp!
printing to a file
• open OUTFILE, “>output.txt”;
• print OUTFILE, “Hello World!n”;
• this can be tedious if all outputs are to same
output file.
• select OUTFILE;
– make OUTFILE the default file handle for all print
statements.
Close your files!
• open FILE, “myfile.txt”;
• @all_lines = <FILE>;
• close FILE;
• opening another file to the same filehandle
will implicitly close the first one.
– don’t rely on this. It’s not Good Programming
Practice. ™
File Test Operators
• Test to see if something is true about a file
• full list on page 98 of Prog. Perl.
if (-e “myfile.txt”){
print “file exists, now openingn”;
open FILE, myfile.txt;
}
• can operate on filename or already existing
filehandle
Directory manipulation
• directories can be opened, read, created,
deleted, much like files.
• take care when doing these operations:
you’re affecting your directory structure
• many of the functions’ success will depend
on what permissions you have on the
specified directories.
open, read, close
opendir DIR “public_html”;
$nextfile = readdir DIR;
@remaining_files = readdir DIR;
closedir DIR;
Rewind
opendir DIR “.”;
$firstfile = readdir DIR;
$secondfile = readdir DIR;
rewinddir DIR;
@allfiles = readdir DIR;
Change, Create, and Delete
• chdir  change working directory.
• mkdir  create directory (like unix call)
• rmdir  remove directory (like unix call)
– works if and only if directory is empty
chdir “public_html”;
mkdir “images”
rmdir “temp”;

More Related Content

Viewers also liked

(Ms. Word) EXPLORING STUDENTS’ PROBLEM IN APPLYING FULL ENGLISH SPEAKING AREA...
(Ms. Word) EXPLORING STUDENTS’ PROBLEM IN APPLYING FULL ENGLISH SPEAKING AREA...(Ms. Word) EXPLORING STUDENTS’ PROBLEM IN APPLYING FULL ENGLISH SPEAKING AREA...
(Ms. Word) EXPLORING STUDENTS’ PROBLEM IN APPLYING FULL ENGLISH SPEAKING AREA...
SMP NEGERI 4 SANANA
 
Escultura del s. xx 2012 2013
Escultura  del s. xx 2012 2013Escultura  del s. xx 2012 2013
Escultura del s. xx 2012 2013
luismillanalonso
 

Viewers also liked (9)

Banking
BankingBanking
Banking
 
resume_14
resume_14resume_14
resume_14
 
A CONFISSÃO Retiro Primeira Eucaristia 2014
A CONFISSÃO Retiro Primeira Eucaristia 2014A CONFISSÃO Retiro Primeira Eucaristia 2014
A CONFISSÃO Retiro Primeira Eucaristia 2014
 
ЦМВ инфекция у ВИЧ-инфицированных пациентов
ЦМВ инфекция у ВИЧ-инфицированных пациентовЦМВ инфекция у ВИЧ-инфицированных пациентов
ЦМВ инфекция у ВИЧ-инфицированных пациентов
 
Brazil's Clean Company Act
Brazil's Clean Company ActBrazil's Clean Company Act
Brazil's Clean Company Act
 
Piątek z XSolve - Bezpieczne nagłówki HTTP
Piątek z XSolve - Bezpieczne nagłówki HTTPPiątek z XSolve - Bezpieczne nagłówki HTTP
Piątek z XSolve - Bezpieczne nagłówki HTTP
 
(Ms. Word) EXPLORING STUDENTS’ PROBLEM IN APPLYING FULL ENGLISH SPEAKING AREA...
(Ms. Word) EXPLORING STUDENTS’ PROBLEM IN APPLYING FULL ENGLISH SPEAKING AREA...(Ms. Word) EXPLORING STUDENTS’ PROBLEM IN APPLYING FULL ENGLISH SPEAKING AREA...
(Ms. Word) EXPLORING STUDENTS’ PROBLEM IN APPLYING FULL ENGLISH SPEAKING AREA...
 
Escultura del s. xx 2012 2013
Escultura  del s. xx 2012 2013Escultura  del s. xx 2012 2013
Escultura del s. xx 2012 2013
 
PHPCon 2016: PHP7 by Witek Adamus / XSolve
PHPCon 2016: PHP7 by Witek Adamus / XSolvePHPCon 2016: PHP7 by Witek Adamus / XSolve
PHPCon 2016: PHP7 by Witek Adamus / XSolve
 

Similar to File io

Delphi L05 Files and Dialogs
Delphi L05 Files and DialogsDelphi L05 Files and Dialogs
Delphi L05 Files and Dialogs
Mohammad Shaker
 
Unix primer
Unix primerUnix primer
Unix primer
dummy
 
Perl Intro 8 File Handles
Perl Intro 8 File HandlesPerl Intro 8 File Handles
Perl Intro 8 File Handles
Shaun Griffith
 
Cs1123 10 file operations
Cs1123 10 file operationsCs1123 10 file operations
Cs1123 10 file operations
TAlha MAlik
 
ProgFund_Lecture_6_Files_and_Exception_Handling-3.pdf
ProgFund_Lecture_6_Files_and_Exception_Handling-3.pdfProgFund_Lecture_6_Files_and_Exception_Handling-3.pdf
ProgFund_Lecture_6_Files_and_Exception_Handling-3.pdf
lailoesakhan
 

Similar to File io (20)

Perl Programming - 03 Programming File
Perl Programming - 03 Programming FilePerl Programming - 03 Programming File
Perl Programming - 03 Programming File
 
Filing system in PHP
Filing system in PHPFiling system in PHP
Filing system in PHP
 
Perl for System Automation - 01 Advanced File Processing
Perl for System Automation - 01 Advanced File ProcessingPerl for System Automation - 01 Advanced File Processing
Perl for System Automation - 01 Advanced File Processing
 
Linux Fundamentals
Linux FundamentalsLinux Fundamentals
Linux Fundamentals
 
pspp-rsk.pptx
pspp-rsk.pptxpspp-rsk.pptx
pspp-rsk.pptx
 
Working with files (concepts/pseudocode/python)
Working with files (concepts/pseudocode/python)Working with files (concepts/pseudocode/python)
Working with files (concepts/pseudocode/python)
 
File Handling in C
File Handling in CFile Handling in C
File Handling in C
 
Php File Operations
Php File OperationsPhp File Operations
Php File Operations
 
finally.c.ppt
finally.c.pptfinally.c.ppt
finally.c.ppt
 
Delphi L05 Files and Dialogs
Delphi L05 Files and DialogsDelphi L05 Files and Dialogs
Delphi L05 Files and Dialogs
 
Unix primer
Unix primerUnix primer
Unix primer
 
linux-file-system01.ppt
linux-file-system01.pptlinux-file-system01.ppt
linux-file-system01.ppt
 
Systems Programming - File IO
Systems Programming - File IOSystems Programming - File IO
Systems Programming - File IO
 
Perl Intro 8 File Handles
Perl Intro 8 File HandlesPerl Intro 8 File Handles
Perl Intro 8 File Handles
 
Cs1123 10 file operations
Cs1123 10 file operationsCs1123 10 file operations
Cs1123 10 file operations
 
Introduction to UNIX
Introduction to UNIXIntroduction to UNIX
Introduction to UNIX
 
C-Programming File-handling-C.pptx
C-Programming  File-handling-C.pptxC-Programming  File-handling-C.pptx
C-Programming File-handling-C.pptx
 
C-Programming File-handling-C.pptx
C-Programming  File-handling-C.pptxC-Programming  File-handling-C.pptx
C-Programming File-handling-C.pptx
 
03 browsing the filesystem
03 browsing the filesystem03 browsing the filesystem
03 browsing the filesystem
 
ProgFund_Lecture_6_Files_and_Exception_Handling-3.pdf
ProgFund_Lecture_6_Files_and_Exception_Handling-3.pdfProgFund_Lecture_6_Files_and_Exception_Handling-3.pdf
ProgFund_Lecture_6_Files_and_Exception_Handling-3.pdf
 

Recently uploaded

如何办理(WashU毕业证书)圣路易斯华盛顿大学毕业证成绩单本科硕士学位证留信学历认证
如何办理(WashU毕业证书)圣路易斯华盛顿大学毕业证成绩单本科硕士学位证留信学历认证如何办理(WashU毕业证书)圣路易斯华盛顿大学毕业证成绩单本科硕士学位证留信学历认证
如何办理(WashU毕业证书)圣路易斯华盛顿大学毕业证成绩单本科硕士学位证留信学历认证
acoha1
 
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
ju0dztxtn
 
obat aborsi Tarakan wa 081336238223 jual obat aborsi cytotec asli di Tarakan9...
obat aborsi Tarakan wa 081336238223 jual obat aborsi cytotec asli di Tarakan9...obat aborsi Tarakan wa 081336238223 jual obat aborsi cytotec asli di Tarakan9...
obat aborsi Tarakan wa 081336238223 jual obat aborsi cytotec asli di Tarakan9...
yulianti213969
 
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Valters Lauzums
 
如何办理(UCLA毕业证书)加州大学洛杉矶分校毕业证成绩单学位证留信学历认证原件一样
如何办理(UCLA毕业证书)加州大学洛杉矶分校毕业证成绩单学位证留信学历认证原件一样如何办理(UCLA毕业证书)加州大学洛杉矶分校毕业证成绩单学位证留信学历认证原件一样
如何办理(UCLA毕业证书)加州大学洛杉矶分校毕业证成绩单学位证留信学历认证原件一样
jk0tkvfv
 
如何办理哥伦比亚大学毕业证(Columbia毕业证)成绩单原版一比一
如何办理哥伦比亚大学毕业证(Columbia毕业证)成绩单原版一比一如何办理哥伦比亚大学毕业证(Columbia毕业证)成绩单原版一比一
如何办理哥伦比亚大学毕业证(Columbia毕业证)成绩单原版一比一
fztigerwe
 
Audience Researchndfhcvnfgvgbhujhgfv.pptx
Audience Researchndfhcvnfgvgbhujhgfv.pptxAudience Researchndfhcvnfgvgbhujhgfv.pptx
Audience Researchndfhcvnfgvgbhujhgfv.pptx
Stephen266013
 
obat aborsi Bontang wa 081336238223 jual obat aborsi cytotec asli di Bontang6...
obat aborsi Bontang wa 081336238223 jual obat aborsi cytotec asli di Bontang6...obat aborsi Bontang wa 081336238223 jual obat aborsi cytotec asli di Bontang6...
obat aborsi Bontang wa 081336238223 jual obat aborsi cytotec asli di Bontang6...
yulianti213969
 
1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证
1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证
1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证
ppy8zfkfm
 
原件一样伦敦国王学院毕业证成绩单留信学历认证
原件一样伦敦国王学院毕业证成绩单留信学历认证原件一样伦敦国王学院毕业证成绩单留信学历认证
原件一样伦敦国王学院毕业证成绩单留信学历认证
pwgnohujw
 

Recently uploaded (20)

Data Analysis Project Presentation : NYC Shooting Cluster Analysis
Data Analysis Project Presentation : NYC Shooting Cluster AnalysisData Analysis Project Presentation : NYC Shooting Cluster Analysis
Data Analysis Project Presentation : NYC Shooting Cluster Analysis
 
如何办理(WashU毕业证书)圣路易斯华盛顿大学毕业证成绩单本科硕士学位证留信学历认证
如何办理(WashU毕业证书)圣路易斯华盛顿大学毕业证成绩单本科硕士学位证留信学历认证如何办理(WashU毕业证书)圣路易斯华盛顿大学毕业证成绩单本科硕士学位证留信学历认证
如何办理(WashU毕业证书)圣路易斯华盛顿大学毕业证成绩单本科硕士学位证留信学历认证
 
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
 
obat aborsi Tarakan wa 081336238223 jual obat aborsi cytotec asli di Tarakan9...
obat aborsi Tarakan wa 081336238223 jual obat aborsi cytotec asli di Tarakan9...obat aborsi Tarakan wa 081336238223 jual obat aborsi cytotec asli di Tarakan9...
obat aborsi Tarakan wa 081336238223 jual obat aborsi cytotec asli di Tarakan9...
 
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
 
如何办理(UCLA毕业证书)加州大学洛杉矶分校毕业证成绩单学位证留信学历认证原件一样
如何办理(UCLA毕业证书)加州大学洛杉矶分校毕业证成绩单学位证留信学历认证原件一样如何办理(UCLA毕业证书)加州大学洛杉矶分校毕业证成绩单学位证留信学历认证原件一样
如何办理(UCLA毕业证书)加州大学洛杉矶分校毕业证成绩单学位证留信学历认证原件一样
 
Identify Customer Segments to Create Customer Offers for Each Segment - Appli...
Identify Customer Segments to Create Customer Offers for Each Segment - Appli...Identify Customer Segments to Create Customer Offers for Each Segment - Appli...
Identify Customer Segments to Create Customer Offers for Each Segment - Appli...
 
What is Insertion Sort. Its basic information
What is Insertion Sort. Its basic informationWhat is Insertion Sort. Its basic information
What is Insertion Sort. Its basic information
 
Seven tools of quality control.slideshare
Seven tools of quality control.slideshareSeven tools of quality control.slideshare
Seven tools of quality control.slideshare
 
如何办理哥伦比亚大学毕业证(Columbia毕业证)成绩单原版一比一
如何办理哥伦比亚大学毕业证(Columbia毕业证)成绩单原版一比一如何办理哥伦比亚大学毕业证(Columbia毕业证)成绩单原版一比一
如何办理哥伦比亚大学毕业证(Columbia毕业证)成绩单原版一比一
 
Audience Researchndfhcvnfgvgbhujhgfv.pptx
Audience Researchndfhcvnfgvgbhujhgfv.pptxAudience Researchndfhcvnfgvgbhujhgfv.pptx
Audience Researchndfhcvnfgvgbhujhgfv.pptx
 
obat aborsi Bontang wa 081336238223 jual obat aborsi cytotec asli di Bontang6...
obat aborsi Bontang wa 081336238223 jual obat aborsi cytotec asli di Bontang6...obat aborsi Bontang wa 081336238223 jual obat aborsi cytotec asli di Bontang6...
obat aborsi Bontang wa 081336238223 jual obat aborsi cytotec asli di Bontang6...
 
SCI8-Q4-MOD11.pdfwrwujrrjfaajerjrajrrarj
SCI8-Q4-MOD11.pdfwrwujrrjfaajerjrajrrarjSCI8-Q4-MOD11.pdfwrwujrrjfaajerjrajrrarj
SCI8-Q4-MOD11.pdfwrwujrrjfaajerjrajrrarj
 
NOAM AAUG Adobe Summit 2024: Summit Slam Dunks
NOAM AAUG Adobe Summit 2024: Summit Slam DunksNOAM AAUG Adobe Summit 2024: Summit Slam Dunks
NOAM AAUG Adobe Summit 2024: Summit Slam Dunks
 
1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证
1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证
1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证
 
原件一样伦敦国王学院毕业证成绩单留信学历认证
原件一样伦敦国王学院毕业证成绩单留信学历认证原件一样伦敦国王学院毕业证成绩单留信学历认证
原件一样伦敦国王学院毕业证成绩单留信学历认证
 
Digital Marketing Demystified: Expert Tips from Samantha Rae Coolbeth
Digital Marketing Demystified: Expert Tips from Samantha Rae CoolbethDigital Marketing Demystified: Expert Tips from Samantha Rae Coolbeth
Digital Marketing Demystified: Expert Tips from Samantha Rae Coolbeth
 
Identify Rules that Predict Patient’s Heart Disease - An Application of Decis...
Identify Rules that Predict Patient’s Heart Disease - An Application of Decis...Identify Rules that Predict Patient’s Heart Disease - An Application of Decis...
Identify Rules that Predict Patient’s Heart Disease - An Application of Decis...
 
How to Transform Clinical Trial Management with Advanced Data Analytics
How to Transform Clinical Trial Management with Advanced Data AnalyticsHow to Transform Clinical Trial Management with Advanced Data Analytics
How to Transform Clinical Trial Management with Advanced Data Analytics
 
Formulas dax para power bI de microsoft.pdf
Formulas dax para power bI de microsoft.pdfFormulas dax para power bI de microsoft.pdf
Formulas dax para power bI de microsoft.pdf
 

File io

  • 2. Opening a File • To read from a file, must use a file handle. – by convention, all caps • open a file (for reading): – open FILE, “myfile.txt”; • open file for writing: – open OUTFILE, “>output.txt”; • open file for appending: – open APPFILE, “>>append.txt”;
  • 3. Reading from a file • open FILE, “myfile.txt”; • $one_line = <FILE>; • @all_lines = <FILE>; – @all_lines get all remaining lines from myfile.txt – puts each line of file into one member of array • remember chomp!
  • 4. printing to a file • open OUTFILE, “>output.txt”; • print OUTFILE, “Hello World!n”; • this can be tedious if all outputs are to same output file. • select OUTFILE; – make OUTFILE the default file handle for all print statements.
  • 5. Close your files! • open FILE, “myfile.txt”; • @all_lines = <FILE>; • close FILE; • opening another file to the same filehandle will implicitly close the first one. – don’t rely on this. It’s not Good Programming Practice. ™
  • 6. File Test Operators • Test to see if something is true about a file • full list on page 98 of Prog. Perl. if (-e “myfile.txt”){ print “file exists, now openingn”; open FILE, myfile.txt; } • can operate on filename or already existing filehandle
  • 7. Directory manipulation • directories can be opened, read, created, deleted, much like files. • take care when doing these operations: you’re affecting your directory structure • many of the functions’ success will depend on what permissions you have on the specified directories.
  • 8. open, read, close opendir DIR “public_html”; $nextfile = readdir DIR; @remaining_files = readdir DIR; closedir DIR;
  • 9. Rewind opendir DIR “.”; $firstfile = readdir DIR; $secondfile = readdir DIR; rewinddir DIR; @allfiles = readdir DIR;
  • 10. Change, Create, and Delete • chdir  change working directory. • mkdir  create directory (like unix call) • rmdir  remove directory (like unix call) – works if and only if directory is empty chdir “public_html”; mkdir “images” rmdir “temp”;