
No.9
- 回答日時:
>1つのプログラムでまとめて読み込むにはどうしたらいいのか
CSVファイルを読むには”文字数”は関係ありません。
[,]で区切られたデータなら簡単に取り出すことが出来ます。
あとは、必要なデータの先頭位置(地点名)と不要なタイトル(単位)、必要なデータ(2番目)を判断して取り出すプログラムを書けばよいのです。
1行目(データー数4個)
地点コード(数値)?、地点名(文字)、年(数値)、月(数値)
2行目(不要行)・・・読み飛ばし。
3行目~(データ数n個)データ番号(数値)シリアル値?、測定データn1,n2・・・
必要なデータのみ取り出して格納。
:
空行かヘッダ(次のデータの先頭)が来たらデータを保存・・・
等として、読み込んだデータを判別する方法をプログラミングすることになります。
この程度のプログラムが書けないなら、エクセルに読み込んで不要なデータを削除して(あるいは必要なデータをだけを取り出す)CSV保存する方が、今までのテキスト貼り付けの方法よりも数倍早いかも知れませんよ。
細かい説明ありがとうございます。
カンマ区切りのデータが読める、という事さえ分かれば大丈夫です。
今からプログラム作ってみます。
ありがとうございました!
No.7
- 回答日時:
データの行のサンプルを3行分書いてください。
この回答への補足
4行分書きます。
11001,SOYAMISAKI ,2004,12
,(mm),,(mm),,(m/sec),,(m/sec),,(/16),,(゜C),,(゜C),,(゜C),,(h),,(cm),,(cm),,(cm),,(cm)
01,0000,0,000,0,12.0,0,16,0,13,0, 00.8,0, 02.8,0,-01.5,0,00.1,0,///,9,///,9,///,9,///,9
02,0000,0,000,0,11.9,0,15,0,14,0, 00.5,0, 04.4,0,-01.7,0,00.9,0,///,9,///,9,///,9,///,9
これはアメダスのデータです。
これより下に数値が続きます。
この場合、3行目以降の行、左から2つめの値だけを読み込みたいのです。
1行目にSOYAMISAKIと地名がありますが、違う地点で計測したデータだと文字数が異なるため、1つのプログラムでまとめて読み込むにはどうしたらいいのか、という質問です。
No.5
- 回答日時:
一行ずつ読んで(fgets())カンマで区切って(strtok())使えばよいのでは?
この回答への補足
すいません、大事な部分を書いていませんでした…
使いたいcsvファイルは、最初に地名などの文字、後半に数値がはいっているもので、後半の数値だけを読み込みたいのです。しかし前半に地名があり文字数が一定でないため、一定の文字数を数えて必要な部分だけ読み込む、という方法が使えません。
文字数が異なるcsvファイルの必要な部分だけを読み込みたいのです。何かいい方法はないでしょうか?
この文章、分かりにくいかもしれませんがお願いします。
まだ初歩的なプログラムしか分からなくて、最初回答の意味が分かりませんでした。
カンマ区切りでデータを読めるんですね。
今からプログラム作ってみます。
ありがとうございました!
No.4
- 回答日時:
小手先のテクニックだけど
CSVファイルを読んだら、,を全てヌル(00h)に置き換えちゃいます、このとき、クォーテーションやダブルクォーテーションで挟まれているカンマは例外処理になるので、工夫してください。二バイト文字もそうですね。
こんな関数を一つ作り、このヌル変換した回数を返してやれば、その中に何個のフィールドがあるかわかります。
後は、先頭にポインタを戻せば、それが一個めの要素のASCIZ文字列です。処理後はstrlen+1だけポインタを動かせば次の要素、と言う具合に全要素が得られます。
まあ、エラーや例外の処理はガンバってください
この回答への補足
すいません、大事な部分を書いていませんでした…
使いたいcsvファイルは、最初に地名などの文字、後半に数値がはいっているもので、後半の数値だけを読み込みたいのです。しかし前半に地名があり文字数が一定でないため、一定の文字数を数えて必要な部分だけ読み込む、という方法が使えません。
文字数が異なるcsvファイルの必要な部分だけを読み込みたいのです。何かいい方法はないでしょうか?
この文章、分かりにくいかもしれませんがお願いします。
No.3
- 回答日時:
テキストファイルにコピーアンドペーストした結果を読み取るCプログラムがすでにあるのなら,そのプログラムでCSVが直接読めるのでは?
CSVファイルはテキストファイルなので,テキストファイルにコピーアンドペーストしなくても ???.csvをオープンして読めば良いと思いますが.
,や”” による区切りやクォーテーションの処理ができないという質問でしょうか?
この回答への補足
すいません、大事な部分を書いていませんでした…
使いたいcsvファイルは、最初に地名などの文字、後半に数値がはいっているもので、後半の数値だけを読み込みたいのです。しかし前半に地名があり文字数が一定でないため、一定の文字数を数えて必要な部分だけ読み込む、という方法が使えません。
文字数が異なるcsvファイルの必要な部分だけを読み込みたいのです。何かいい方法はないでしょうか?
この文章、分かりにくいかもしれませんがお願いします。
No.2
- 回答日時:
>csvファイルの値をテキストファイルにコピーアンドペーストし、
csvファイルって、もともとテキストファイルなんですけど・・・。
メモ帳等で開いて見たことはありませんか?
この回答への補足
すいません、大事な部分を書いていませんでした…
使いたいcsvファイルは、最初に地名などの文字、後半に数値がはいっているもので、後半の数値だけを読み込みたいのです。しかし前半に地名があり文字数が一定でないため、一定の文字数を数えて必要な部分だけ読み込む、という方法が使えません。
文字数が異なるcsvファイルの必要な部分だけを読み込みたいのです。何かいい方法はないでしょうか?
この文章、分かりにくいかもしれませんがお願いします。

No.1
- 回答日時:
一番単純なのは、csvファイルから1文字ずつ読み込んで、区切り記号(,かTABですかね)の間の文字列を連結すればできるでしょう。
もっと簡単な方法を他の方が教えてくれるかもしれませんね。
この回答への補足
すいません、大事な部分を書いていませんでした…
使いたいcsvファイルは、最初に地名などの文字、後半に数値がはいっているもので、後半の数値だけを読み込みたいのです。しかし前半に地名があり文字数が一定でないため、一定の文字数を数えて必要な部分だけ読み込む、という方法が使えません。
文字数が異なるcsvファイルの必要な部分だけを読み込みたいのです。何かいい方法はないでしょうか?
この文章、分かりにくいかもしれませんがお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- XML PHP.laravelについて 1 2023/07/06 15:26
- Excel(エクセル) PowerQueryに詳しい方教えてください(Office365) 1 2022/07/24 21:11
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- Excel(エクセル) Excel Powerクエリーの質問、行数指定は可能でしょうか? 2 2022/08/22 12:54
- その他(プログラミング・Web制作) Pythonで、データファイルと列名ファイルを1つのファイルにしたいです。 1 2023/07/27 20:29
- Excel(エクセル) csvファイルをExcel形式で読み込むには 2 2023/07/03 13:09
- Access(アクセス) CSVファイルの「0落ち」にVBA 6 2023/02/02 15:27
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチでCSVを処理する時、空の...
-
【エクセルVBA】お願いします。...
-
エクセル形式のファイルの読み込み
-
csvファイルでの日付設定「yyyy...
-
CSV出力して、MS/EXCELで開くと...
-
CSV形式での保存時に”文字列...
-
CSVファイル作成
-
特定ファイルの一括削除
-
csvファイル 項目数取得
-
複数のcsvファイルをExcelに一...
-
【ExcelVBA】UTF-8の文字コード...
-
カンマ区切りのCSVファイルから...
-
csvファイルのデータの一部を取...
-
【C#】パス名で無効な文字
-
エクセルのプロパティーでセキ...
-
エクセルvbaでdocuworksprinter...
-
Windows10でコマンドプロンプト...
-
COM
-
ExcelブックをGoogleスプレッド...
-
変更の有ったファイルを確認し...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カンマ区切りのCSVファイルから...
-
バッチでCSVを処理する時、空の...
-
【C#】パス名で無効な文字
-
csvファイル 項目数取得
-
マクロから出力されるcsvのダブ...
-
CSV形式での保存時に”文字列...
-
エクセルVBA 大容量CSVファイル...
-
csvファイルでの日付設定「yyyy...
-
【ExcelVBA】UTF-8の文字コード...
-
CSVファイルの項目行を削除...
-
【エクセルVBA】お願いします。...
-
csvファイルを列数ごとに分割す...
-
VBAでCSVファイルのインポート...
-
【エクセル マクロ】読み込ん...
-
エクセル形式のファイルの読み込み
-
巨大なCSVの加工(指定列のみの...
-
Windowsのバッチファイルについ...
-
COBOLでCSVをインプットにして...
-
CSV出力して、MS/EXCELで開くと...
-
CSV形式のファイルを読み込んで...
おすすめ情報