このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1307166756/885
#  [1] 授業単元:プログラミング 
#  [2] 問題文(含コード&リンク): 
#  file1を読み込み、n1行目からn2 (n2>=n1)行目までを削除し、file2に書き込むファイル、ensyu03.cを作成せよ 
#  注意:切り取った際、文章は上に詰めること 
#  erase_multiline( ”file1”, ”file2”, n1, n2 ) ; 
#   
#  file1を読み込み、n行目とm行目を入れ替え、file2に書き込むファイル、ensyu04.cを作成せよ 
#  replace_lines( ”file1”, ”file2”, n, m ) ; 
#   
#  file1を読み込み、特定の文字列string を含む行を削除し、file2に書き込むファイル、ensyu05.cを作成せよ 
#  erase_string( ”file1”, ”file2”, ”string” ) ; 
#   
#  file1を読み込み、特定の文字c を削除し、file2に書き込むファイル、ensyu06.cを作成せよ 
#  erase_char( ”file1”, ”file2”, ’c’ ) ; 
#  

'file1を読み込み、n1行目からn2 (n2>=n1)行目までを削除し、file2に書き込む'(_n1行目,_n2行目) :-
        file1を読み込み(Lines),
        'n1行目からn2 (n2>=n1)行目までを削除し'(Lines,_n1行目からn2行目までを削除されたならび),
        file2に書き込む(_n1行目からn2行目までを削除されたならび),!.

file1を読み込み(Lines) :-
        get_lines(file1,Lines).

'n1行目からn2 (n2>=n1)行目までを削除し'(Lines,_n1行目からn2行目までを削除されたならび) :-
        length([_|L0],_n1行目),
        length(L2,_n2行目),
        append(L0,L1,L2),
        append(L2,L3,Lines),
        append(L0,L3,_n1行目からn2行目までを削除されたならび),!.

file2に書き込む(_n1行目からn2行目までを削除されたならび) :-
        open(file2,write,Outstream),
        append(_,[Line|R],_n1行目からn2行目までを削除されたならび),
        writef('%t\n',[Line]),
        R = [],
        close(Outstream),!.