diff --git a/info/csv-explain.html b/info/csv-explain.html index 1fe0a4f..c26ab8c 100644 --- a/info/csv-explain.html +++ b/info/csv-explain.html @@ -14,9 +14,7 @@ font-size: 1.1rem; margin-bottom: 10px; } - table{ - - } + .program{color: White; background-color: black; font-size:20px; margin-bottom: 1em; } td{ text-align: center; font-weight: bold; @@ -69,6 +67,12 @@ .explain-list:hover{ color: blue; } + .comment{ + color: greenyellow; + } + .blue{ + color: rgb(0, 255, 255); + } @media screen and (max-width: 746px){ p{ font-size: 0.9rem; @@ -131,6 +135,9 @@
  • Hashをもっと深く知ろう!
  • + +
  • CSV.readを使ったプログラムを書いてみよう!
  • +
  • 番外編:CSVファイルへの「書き込み」
  • @@ -277,6 +284,52 @@

    +
    +

    CSV.readを使ったプログラムを書いてみよう!

    +

    今回作るのはCSV.readを使った観光スポットを検索するプログラムです。

    +

    今回使うファイルはsyounai.csvkankou.rbです。

    +

    syounai.csv

    +
    +

    + 建物名,住所,特徴
    + 羽黒山 五重塔,山形県鶴岡市羽黒町手向,羽黒山参道、東北北地方では最古の塔といわれている。,
    + 白山島,山形県鶴岡市由良2丁目,"由良海岸のシンボルである島。",
    + 加茂水族館,山形県鶴岡市今泉字大久保657-1,約1万のミズクラゲがいる「クラゲドリームシアター」がある。,
    + 庄内観光物産館 ふるさと本舗,山形県鶴岡市布目字中通80-1,庄内地方をはじめとするお土産を数多く取り揃えている。,
    + 酒田米菓(オランダせんべいFACTORY),山形県酒田市両羽町2-24,オランダせんべいFACTORYではその工程を見学できる。,
    + 丸池様,山形県飽海郡遊佐町直世荒川57,水深3.5メートル、湧き水だけで満たされた池。,
    + 山居倉庫,山形県酒田市山居町1-1-20,庄内のシンボルである山居倉庫。,
    + 道の駅「とざわ」高麗館,山形県最上郡戸沢村蔵岡黒淵3008-1,韓国風の外観が特徴の戸沢村にある道の駅。, +

    +
    +

    このcsvファイルを読み込んで取り出していくプログラムを書いていく。

    +

    kankou.rb

    +
    +      require 'csv'# CSVライブラリ読み込み
    +        data = CSV.read("syounai.csv", :headers => true)#観光スポット一覧で使うcsvファイル読み込み
    +        
    +        while true
    +          puts "1 観光スポット一覧"
    +          puts "0 終了"
    +          print "どれかひとつ選んでください => "
    +          input=gets.to_i
    + if input == 0 then #もしinputが0だったとき + break #終了する + elsif input == 1 then #もしinputが1だったとき + #↓行ごとに取り出す + n = 0 + data.each{|row| # rowには1行ずつ値が入り繰り返される + printf("%d: %sとはどんなところ?\n", n+=1, row["建物名"]) + printf("住所 => %s \n特徴 => %s \n",row["住所"], row["特徴"]) + print("--------------------------\n") }#仕切りの機能(何個あってもいい) + else + print "1/0から選んでください\n" + end + end +
    +

    実際にプログラムを動かしてみてね!どう動いたかな?

    +
    +

    CSVファイルへの書き込み

    書き込みにはCSV.openメソッドを使う。