このディレクトリの索引
http://toro.2ch.net/test/read.cgi/tech/1309076891/688
#  【 課題 】  
#  1、  
#  data.txt→2chの1スレッドのデータが入っている。  
#  http://ime.nu/www.dotup.org/uploda/www.dotup.org2512848.txt.html  
#   
#  dataExtraction.java→data.txtの1レスを読み込んで一枚のテキストファイルに出力していくプログラム(例:レス1はres1.txtに.......レス200はres200.txtに出力)  
#  http://ime.nu/www.dotup.org/uploda/www.dotup.org2512850.txt.html  
#   
#  このdataExtraction.javaがdata.txtの1レスを読み込んだ際に 
#  もしURLやアンカを表す文字列(例:<a href="../test/read.cgi/bizplus/1326413757/3" target="_blank">../test/read.cgi/tech/1309076891/3</a>)があった場合 
#  それを削除してテキストファイルに出力する機能を追加してください。  

'data.txtには2chの1スレッドのデータが入っている。1レスをずつ読み込んでレス番号をファイル名に含む一枚のテキストファイルに出力していく' :-
        get_chars('data.txt',Chars),
        'data.txtには2chの1スレッドのデータが入っている。1レスをずつ読み込んでレス番号をファイル名に含む一枚のテキストファイルに出力していく'(Chars).

'data.txtには2chの1スレッドのデータが入っている。1レスをずつ読み込んでレス番号をファイル名に含む一枚のテキストファイルに出力していく'(Chars) :-
        append(_,[<,d,t,>|R1],[<,/,d,t,>|R2],Chars),
        append(L1,[<,d,d,>|R3],[<,/,d,d,>|R4],R2),
        一枚のテキストファイルに保存(R1,L1,R3),),
        'data.txtには2chの1スレッドのデータが入っている。1レスをずつ読み込んでレス番号をファイル名に含む一枚のテキストファイルに出力していく'(R4),
'data.txtには2chの1スレッドのデータが入っている。1レスをずつ読み込んでレス番号をファイル名に含む一枚のテキストファイルに出力していく'(_).

一枚のテキストファイルに保存(R1,L1,R3) :-
        レス番号を得る(R1,_レス番号),
        concat_atom(['res',_レス番号,'.txt'],_ファイル名),        
        open(_ファイル名,write,Outstream),
        テキスト部分の保存(Outstream,R1,L1,R3),
        close(Outstream),!.

レス番号を得る(R1,_レス番号) :-
        concat_atom(R1,S),
        split(S,[' '],[_レス番号|_]).

テキスト部分の保存(Outstream,R1,L1,R3) :-
        put_chars(Outstream,[<,d,t,>|R1]),
        put_chars(Outstream,L1),
        put_chars(Outstream,[<,d,d,>|R3]),
        put_chars(Outstream,[<,/,d,d,>]).

put_chars(_,[]).
put_chars(Stream,[_文字|R]) :-
        put_char(Stream,_文字),
        put_chars(Stream,R).