初めまして、perl全くの初心者であります。
なにとぞよろしくお願いいたします。
CSVファイルからdataをcgiに取り込みたいのですが、他者の質問を参考にしたのですがなかなか理解しがたく、みなさまのお力を拝借したいわけです。

例)
以下のようなcsvがあるとします。
data.csv
 テレビ,tv.jpg,安いよ,39800
 ビデオ,vtr.jpg,高機能,29800
 洗濯機,sen.jpg,2層式,128000

この場合、
 $sina[x] $jpg[x] $pr[x] $kakaku[x]
みたいに、各データを当てはめたいのですが、どのようにすればいいのでしょうか?
また、データ記載の商品の数(例では3です)を求めたいのですが。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

俺も初心者なんであんま自信ないですが、こんなのどうでしょう?


------------
open(IN,"data.csv");
flock(IN,2);
@line = <IN>;
flock(IN,8);
close(IN);

$cnt = 0;
foreach(@line){
($sina[$cnt],$jpg[$cnt],$pr[$cnt],$kakaku[$cnt]) = split(/\,/,$_);
$cnt++;
}

---------------------
$cntにデータの数が入ります。
foreach(@line)で配列の0番目から順に$_に代入して、反復実行します。
    • good
    • 0
この回答へのお礼

ありがとうございます。非常に助かりました。
初心者にはシンプルでわかりやすい記述で、
なんにでも応用が利きそうです。
また、よろしくお願いいたします。

お礼日時:2001/07/02 23:30

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング