then again, you could do this in common lisp without having two copies of the file or having to have the whole file in memory by using two seperate filestreams on the same file

(with-open-file (in #p"/path/to/bigfile" :direction :input)
 (with-open-file (out #p"/path/to/bigfile"
                      :direction :output
                      :if-exists :overwrite)
     (dotimes (i 300) (read-line in))
     (handler-case
         (loop (princ (read-line in) out) (terpri out))
        (error ()))

I'm not sure anyone cares, but I just realized this would still leave the last 300 lines duplicated at the end of the document... off the top of my head I don't know if it's possible to force an eof on an output file, I'll have to ask someone... it may in fact not be possible to get the desired effect of destructively rewriting the doc in it's own puddle of bits

Nick

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today - it's FREE! http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/


_______________________________________________
RLUG mailing list
[email protected]
http://lists.rlug.org/mailman/listinfo/rlug

Reply via email to