rpike has asked for the wisdom of the Perl Monks concerning the following question:
Running V. 5.8.... and the +> doesn't seem to be working. Could someone post a simple example of writing to a file and then reading all the contents back in using +> or +<? Shouldn't opening, writing to it (print FILEHANDLE "Some text"; my @elems = <FILEHANDLE>;), and then reading in work like this? Thanks in advance.
Rob
Re: Both read and write
by Errto (Vicar) on Jan 08, 2008 at 20:03 UTC
|
You can't read text you've just written because the current position of the filehandle will be after the end of the text you've just written, so if you want to read it you have to seek back to the place you want to read from. At least, that's what I found in a quick test - I don't have much experience with this. | [reply] |
|
Laziness, time to try it out, and low confidence (not in that particular order) caused me to post this then. I was thinking I might need to use seek or navigate back to the start of the file (possibly). Thanks for the info, now I'll definitely give it a try when I get back to it.
| [reply] |
Re: Both read and write
by cdarke (Prior) on Jan 08, 2008 at 20:38 UTC
|
A small tip when using seek: The POSITION argument can be negative. This is useful if you read a record then wish to overwrite it: seek HANDLE,-(length $record),SEEK_CUR;
| [reply] [d/l] |
|