ファイル操作
一番基本的なことと、かゆいところだけ書きます。 全般的には、もっとちゃんと書いてある記事を参考にしてください。
ファイルの読み込み
open( "filename", "r" ) do fp for line in eachline( fp ) ... end end
もう少し具体的な例
N-by-2のテキストデータdata.txtを読み込んで、行列にしたい場合はこんなかんじ。
filename = "data.txt" totalrows = countlines(open( filename, "r" )) open( filename, "r" ) do fp cnt = 0 dat = zeros(Int64,totalrows,2) # (ファイルの行数,2)のゼロ行列 for line in eachline( fp ) # 行ごとに読み込む cnt += 1 line = rstrip(line, '\n') # 改行消し。無くても大丈夫。 u = split(line, " ") # スペース区切りで分割 u1 = parse(Int64,u[1]) # 文字列を数値に変換 u2 = parse(Int64,u[2]) dat[cnt,1] = u1 dat[cnt,2] = u2 end println(dat) # 書き出してみる。 end
タブ区切りだったらsplit(line, "\t")
。
もっと詳しいことは、参考にさせていただいた、こちらのページをどうぞ。
ポインターを戻す
Pythonのseek(0)
。
Juliaでは、
seekstart(fp)
詳しくは
I/O and Network — Julia Language 0.5.1-pre documentation
ファイルへの書き込み
こんなかんじ。
fp = open("filename.txt","w") write(fp, "Write something.\n") close(fp)