| |||||||||||
| |||||||||||
user input Posted by Tim (Tim), 22 October 2007 hi,can anyone help me in this.... i want to open a file in write mode but the path of the file sholud be given by the user at run time. i have pasted the code what i have tried. $file is the input file and $file1 is the output file which i want to open in a write mode. print "Please enter the input file name\n"; $file = <STDIN>; open(INFILE, $file); print "Please enter the output file name\n"; $file1 = <STDIN>; open (OUT,$file1); foreach (<INFILE>) { ....... #do something and should print in the output file. } Posted by george_Ball (george), 22 October 2007 Try:print "Enter output file name: "; $file1 = <STDIN>; chomp $file1; open ( OUTPUT, ">$file1"); # The file handle is now available for output... Remember chomp to take off the newline from the user input. To open the file for output you put the ">" in front of the filename. Doing this in "..." quotes will use interpolation to get the sttring that you require... HTH George Posted by deep (deep), 24 November 2007 Try this:if($#ARGV !=1) { warn "WARNING: Need to supply two files\n"; exit; } my ($File1,$File2)= @ARGV; open INFILE1,"<$File1"; open INFILE2,"<$File2"; Here I am forcing the user to input to file names, however, in this case in a read mode. In two files are not entered it will warn the user and will exit. on command line, i am giving the complete file name. This page is a thread posted to the opentalk forum
at www.opentalk.org.uk and
archived here for reference. To jump to the archive index please
follow this link.
|
| ||||||||||
PH: 01144 1225 708225 • FAX: 01144 1225 793803 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho |