Tcl/Tk: CSVファイルの中身を読みたい
imoto
Altair Employee
Tcl言語では、openコマンドでファイルハンドルを取得して、getsコマンドでハンドルを指定すると、1行ずつ読むことができます。
openコマンドの最後を「r」にすると読み込みモード、「w」にすると書き込みモードで開きます。
openコマンドで開いていると、他からの書き込みなどができないロック状態になりますので、最後に忘れずにcloseコマンドで閉じて下さい。
-簡単なサンプルを用意しました。tk_messageBoxを使ったサンプルなので、←のような短いCSVファイルで試してみて下さい。
set ft {{'CSV Files' .csv} {'All Files' *}};
set fn [tk_getOpenFile -filetypes $ft];
set fh [open $fn r];
while {![eof $fh]} {
gets $fh line;
set line [split $line ,];
tk_messageBox -message 'Gets = ${line}\nLength = [llength $line]';
}
close $fh;
-表示イメージ-
0