
|
ファイルオープン・クローズ
2002/07/15 作成 ----------- データをファイルに保存したり、ファイルからデータを読み出したりします。 CGIでは、BBSに書き込まれた内容やアクセスカウンタのカウント数等を保存し、表示する時はそれらのデータをファイルから取り出す必要がありますね。
open(<FILE>,"data.txt");
単にファイルを開いて閉じるという何の意味もない例です…close(<FILE>); ・open(ファイルハンドル, ファイル名); open関数を使ってファイルを開きます。 「ファイルハンドル」は自分で定義する事ができ、<>でくくります。 「ハンドル」とは…自動車や自転車の「ハンドル」と同じようなもんです。ハンドルがなきゃ車は操作できません。 説明になってないけど…僕もハンドルという言葉知ってから半年以上意味なんて知らずに使っていたので 分かんなくても平気です。とにかく必要なんです(爆 「ファイル名」はそのまんま。開くファイルの名前、又はパス。 ・close(ファイルハンドル); close関数を使ってファイルを閉じます。 開いた時に指定したファイルハンドルを指定する。 |
|---|
|
いろんなファイルオープン
2002/07/18 作成 ----------- ファイルを開く時に「書き込み用」とか「読み込み用」とかを指定して開く事が出来ます。
何も指定せずにファイル名だけを指定すると…読み込み専用になるようです… |
|---|
|
読み込んでみる
2002/07/18 作成 ----------- ■ $line = <ファイルハンドル>
$line = <ファイルハンドル>;
のようにすると、ファイルハンドルで指定したファイルから一行読み出して$lineに格納します。■ @lines = <ファイルハンドル>
@lines = <ファイルハンドル>;
のようにすると、ファイルハンドルで指定したファイルから一行ずつ読み出し、それぞれの行を順に$lines[0]・$lines[1]・$lines[2]・$lines[3]…に格納していきます。■ read関数
「read」関数で読み出す事もできます。
read(FILEHANDLE,SCALAR,LENGTH,OFFSET);
FILEHANDLE→ファイルハンドルread(FILEHANDLE,SCALAR,LENGTH); SCALAR→読み込んだデータを格納するスカラ変数 LENGTH→読み込むバイト数 OFFSET→読み込み開始位置(バイト) OFFSETを指定すると、ファイル内の指定した位置から読み込みを開始します。 |
|---|
|
書き込んでみる
2002/07/18 作成 ----------- ■ print
print FILEHANDLE 出力文字列;
printの後に指定した「FILEHANDLE」の示すファイルに「出力文字列」を書き込みます。■ syswrite
syswrite [FILEHANDLE] , [出力文字列] , [出力バイト数];
「FILEHANDLE」が示すファイルに「出力文字列」を「出力バイト数」分だけ書き込みます。 |
|---|