コンテンツにスキップするには Enter キーを押してください

c++でcsvファイル

C++でCSVファイルを使います

C++で書かれたソフトを改造してデータを抽出するので、簡易的にということでデータをscvファイルに一旦落とそうと思うので、c++でscvファイルの扱い方をメモしようと思います。

c++でファイル操作をするときはc++の標準ライブラリであるファイルストリームを使います。
使うためにはファイルストリームのヘッダをインクルードします。

まずは一番基本のテキストファイル

#include <iostream>;
#include <fstream>;
int main(){
 std::ofstream ofs("test.txt");
 ofs << "The prefectures of Japan consist of " << 47 << " prefectures." << std::endl;
 // The prefecture of Japan consist of 47 prefecture.
 return 0;
}

二行目に行きたいときは2回に分けて書けばよい

ofs << "hoge" << std::endl;
ofs << "hoge2" << std::endl;
// hoge
// hoge2

 

2回に分けて同じ行に書きたいときはstd::endl;を最初につけなければ良い

ofs << "hoge";
ofs << "hoge2" << std::endl;
// hogehoge2

 

次にcsvのときですが、ほぼ同じです。

std::ofstream ofs("test.csv");
ofs << 1212 << "," << 33 << "," << 44 << std::endl;
ofs << 55 << "," << 64 << "," << 09 << std::endl;
// 1212,33,44
// 55,64,09

基本中の基本ですが、しばらく触っていないと忘れたりするものです。
ノートっぽくなってきたかな

ではでは



2 Comments

  1. アカケロ
    アカケロ 2018年10月30日

    二つ目の値を次の列のセルに書き込むにはどうすればよいのでしょうか?

    • toxweblog
      toxweblog 2018年10月30日

      CSVにおいてでしょうか?
      ブログの内容にあるCSVのセクションの例の通り
      間に”,”を挟めば次の列になります.
      ofs << "first_col" << "," << "second_col" << std::endl; のように

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です