RosettaCodeData/Task/Remove-lines-from-a-file/Phix/remove-lines-from-a-file.phix
2017-09-25 22:28:19 +02:00

15 lines
456 B
Text

procedure remove_lines(string filename, integer start, integer n)
integer fn = open(filename,'r')
if fn!=-1 then
sequence lines = get_text(fn,GT_LF_STRIPPED)
close(fn)
end if
if fn=-1 or n<1 or start<1 or length(lines)<start+n-1 then
puts(1,"bad parameters!\n")
else
lines[start..start+n-1] = {}
fn = open(filename,'w')
puts(fn,join(lines,"\n")
close(fn)
end if
end procedure