初めまして。C言語のプログラミングに詳しい方、よろしくお願いします。
C言語のプログラミングで、htmlファイルのタグで挟まれた部分を切り出すようなものを作りたいのですが...
具体的に言いますと、
例えば、気象庁のデータ(八王子の2008年5月1日の1時間ごとの値)のページをhtmlソースで保存したもの(ここでは5_1.htmlと名前をつけたとします)をあらかじめ用意しておき、fopenなどで開き、1行づつ見ていき、表の中のデータを整理して保存したいのです。
まずは、表の"1時"の部分のデータから、降水量(0.0)、気温(13.9)、風速(1.6)、風向(西北西)の4つを取り出し(5_1.htmlの87行目)、別の、例えばテキストファイル(5.txtと名前をつけると考えて)に、
08,05,01,01,0.0,13.9,1.6,西北西
のように、年,月,日,時間,降水量,気温,風速,風向というように書き出したいのです。
さらに、表の"2時"から"24時"の部分も同様に(5_1.htmlの110行目まで)、上のような形式で、次の行に順に、
08,05,01,01,0.0,13.9,1.6,西北西
08,05,01,02,0.0,13.4,1.2,西北
...
...
...
08,05,01,24,0.0,16.7,1.7,西北西
のようにしていきたいのです。
24時まで終わると、次の日のデータ(あらかじめ5_2.htmlとして保存しています)を読み込み、"1時"のデータから順に、1日目の"24時"のデータの次の行に書き出していきたいのです。
(最終的には5/31(5_31.html)の24時までのデータを5.txtにすべて書き出したいのです。)
C言語の知識はあまりないので、サンプルプログラムなどを提示していただけたら幸いです。それを参考に勉強していきたいと思っています。
下手糞で見づらい文章になってしまい、すみません。
C言語のプログラミングに詳しい方、よろしくお願いします。
(5_1.htmlは、気象庁の過去の気象データ検索から、八王子の2008年5月1日の1時間ごとの値を選択したものです。
http://www.data.jma.go.jp/obd/stats/etrn/view/ho …を
右クリック→ソースの表示→上書き保存→HTMLソースで保存したものです。)
No.2
- 回答日時:
環境がかかれてないけど、DOMを使うという方法もありそう。
VSの場合、C++からだとちょっと面倒かも。
C#とかからのほうが簡単。
この回答への補足
回答ありがとうございます。
環境はwindows xpで、Borland C++ 5.5というものを使おうと思っています。
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
こんにちは。
直接の回答でなくてすみません。
Excelをお持ちでしたら、という前提で、
ご質問のリンク先のデータを保存するのでしたら、
1)ブラウザ上でデータ範囲をマウスで選択する。
・選択範囲が反転表示された状態になります。
2)マウスの右クリックメニューよりコピーする
3)Excelを起動する。
・シートが新規作成された状態にします。
・かつ、A1セルが選択された状態にします。
4)Excelの「編集」メニューより「貼り付け」を行う。
・シートにデータが貼り付けられます。
5)必要ならデータを加工する。
6)ExcelでデータをCSV形式ファイルで保存する。
※また、リンク先サイトのページを保存する際は、ブラウザ上で
「ファイル」メニューより「名前を付けて保存」を選択し、
ファイルの種類を「HTMLのみ」にして保存した方が楽かもしれ
ません。
※ローカルに保存したHTMLファイルをブラウザで開いてから、
上記の作業を行うという方法もあります。
という作業でデータをCSV形式のテキストファイルにしてからの方が、
C/C++のプログラムから扱い易いと思いますが如何でしょうか?
CSV形式ならカンマ区切りのみでデータを抜き出していけば良いので、
html形式のデータを扱うよりも処理が楽になるかと思います。
宜しければ検討してみては如何でしょう?
まあ、Excelを使うなら、C/C++のプログラムを使わずに、Excelだけで
処理を行うという方法も考えられますが。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) python 気象データの取得 2 2023/06/20 23:54
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) VBAで重複データを合算したい(時間) 1 2022/12/08 23:06
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- Visual Basic(VBA) VBA 毎日取得するデータを順番に反映していく方法 6 2023/08/26 16:22
- その他(プログラミング・Web制作) Windowsのマクロプログラムで、こんなことできますか? 3 2022/06/28 14:30
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- その他(プログラミング・Web制作) テキストデータ変換(プログラミング、linux、python) 8 2023/08/08 16:39
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DTOとEntityの差は何ですか。
-
wordの差し込み印刷で文字...
-
【C#】DataGridViewの最大列数...
-
TCPDFでのHTML出力
-
C#でのForm間のデータ受け渡し...
-
WordでExcelデータを差込...
-
excel access連携 このテーブル...
-
rsyncでのエラー(sh: rsync: no...
-
エクセルVBAで楽天証券に注...
-
ページ切り替え機能
-
htmlについて.sqlの表示
-
小数点以下を含む計算でバグが...
-
「外部データの取り込み」とい...
-
Excelピポットテーブルでの表示...
-
回線速度が64kbpsだったら、64k...
-
ActiveReportのサブレポート機...
-
MSFlexGridのデータを初期化し...
-
VB.NET 2017の勉強中です。 今...
-
C言語で地図を描きたい
-
★お手上げ状態です。助けてくだ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
wordの差し込み印刷で文字...
-
DTOとEntityの差は何ですか。
-
【C#】DataGridViewの最大列数...
-
excel access連携 このテーブル...
-
WordでExcelデータを差込...
-
ActiveReportのサブレポート機...
-
GridViewからチェックボックス...
-
★お手上げ状態です。助けてくだ...
-
VBA内でのGetPixelを使用した時...
-
表を表示するコントロールについて
-
Windowsのマクロプログラムで、...
-
INIファイルに一括書き込みを行...
-
MSFlexGridのデータを初期化し...
-
C#でのForm間のデータ受け渡し...
-
「外部データの取り込み」とい...
-
C言語で地図を描きたい
-
小数点以下を含む計算でバグが...
-
エクセルVBAで楽天証券に注...
-
CSVのインポート【ASP.NET】
-
画像の読み込み&白黒判別プロ...
おすすめ情報