欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

c語言讀取csv文件和c++讀取csv文件示例分享

 更新時間:2014年03月11日 14:34:40   作者:  
這篇文章主要介紹了c語言讀取csv文件和c++讀取csv文件示例,需要的朋友可以參考下

C讀取csv文件

復制代碼 代碼如下:

#include <stdio.h>
#include <string.h>


char *trim(char *str)
{
    char *p = str;
    while (*p == ' ' || *p == '\t' || *p == '\r' || *p == '\n')
        p ++;
    str = p;
    p = str + strlen(str) - 1;
    while (*p == ' ' || *p == '\t' || *p == '\r' || *p == '\n')
        -- p;
    *(p + 1) = '\0';
    return str;
}

int main()
{
 FILE *fp = fopen("test.csv", "r");
 if(fp == NULL) {
  return -1;
 }

 char line[1024];
 while(fgets(line, sizeof(line), fp)) {
  //printf("%s", line);

  char *save_ptr;
  char *name = strtok_r(line, ",", &save_ptr);
  if (name == NULL) {
   return -1;
  }  
  char *age = strtok_r(NULL, ",", &save_ptr);
  char *birthday = strtok_r(NULL, ",", &save_ptr);
  printf("%s\t%s\t%s\n", trim(name), trim(age), trim(birthday));
 }

 return 0;
}

C++讀取csv文件

復制代碼 代碼如下:

#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
#include <vector>

using namespace std;

string Trim(string& str)
{
 str.erase(0,str.find_first_not_of(" \t\r\n"));

 str.erase(str.find_last_not_of(" \t\r\n") + 1);

 return str;
}

int main()
{
 ifstream fin("test.csv");

 string line; 
 while (getline(fin, line)) {
  //cout << line << endl;

  istringstream sin(line); 
  vector<string> fields; 
  string field;
  while (getline(sin, field, ',')) {
   fields.push_back(field); 
  }

  string name = Trim(fields[0]); 
  string age = Trim(fields[1]); 
  string birthday = Trim(fields[2]); 
  cout << name << "\t" << age << "\t" << birthday << endl;
 }
}



csv文件
復制代碼 代碼如下:

alice, 22, 1992/03/05
bob, 33, 1981/11/21
cart, 40, 1974/07/13

相關文章

  • C語言實現(xiàn)動態(tài)版通訊錄的示例代碼

    C語言實現(xiàn)動態(tài)版通訊錄的示例代碼

    這篇文章主要為大家詳細介紹了如何利用C語言實現(xiàn)一個簡單的動態(tài)版通訊錄,文中的示例代碼講解詳細,對我們學習C語言有一定幫助,需要的可以參考一下
    2022-08-08
  • 關于CLion配置visual?studio(msvc)和JOM多核編譯的問題

    關于CLion配置visual?studio(msvc)和JOM多核編譯的問題

    這篇文章主要介紹了CLion配置visual?studio(msvc)和JOM多核編譯,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • C++基礎概念講述

    C++基礎概念講述

    這篇文章主要介紹了C++基礎概念,??本次為C++的一個開篇,重點是更好的理解C++相對于其他編程語言的一個特性,之后會持續(xù)更新,本次專欄計劃是掌握C++的基礎語法以及常用特性,并且從細節(jié)上去理解,需要的朋友可以參考一下
    2021-12-12
  • 深入Main函數(shù)中的參數(shù)argc,argv的使用詳解

    深入Main函數(shù)中的參數(shù)argc,argv的使用詳解

    本篇文章是對Main函數(shù)中的參數(shù)argc,argv的使用進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C/C++ INI文件操作實現(xiàn)代碼

    C/C++ INI文件操作實現(xiàn)代碼

    本文章主要為分享C/C++ INI文件操作實現(xiàn)代碼,增加注釋和修復了一些問題。這里給出完整的實現(xiàn)文件,在需要的地方包含該頭文件就好了
    2020-02-02
  • C++對象的動態(tài)建立與釋放詳解

    C++對象的動態(tài)建立與釋放詳解

    我們知道可以用new運算符可以動態(tài)的分配內(nèi)存,用delete運算符可以釋放這些內(nèi)存。當我們使用new運算符動態(tài)的分配一個內(nèi)存之后,會自動返回一個該內(nèi)存段的起始地址,也就是指針。
    2013-10-10
  • 詳解C語言中的常量指針和指針常量

    詳解C語言中的常量指針和指針常量

    這篇文章主要介紹了詳解C語言中的常量指針和指針常量,包括其之間的區(qū)別是C語言入門學習中的基礎知識,需要的朋友可以參考下
    2015-08-08
  • 用C語言實現(xiàn)排雷游戲

    用C語言實現(xiàn)排雷游戲

    大家好,本篇文章主要講的是用C語言實現(xiàn)排雷游戲,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01
  • C++生成格式化的標準字符串實例代碼

    C++生成格式化的標準字符串實例代碼

    這篇文章主要給大家介紹了關于C++生成格式化的標準字符串的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用C++具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-09-09
  • C語言編程中對目錄進行基本的打開關閉和讀取操作詳解

    C語言編程中對目錄進行基本的打開關閉和讀取操作詳解

    這篇文章主要介紹了C語言編程中對目錄進行基本的打開關閉和讀取操作,是C語言入門學習中的基礎知識,需要的朋友可以參考下
    2015-09-09

最新評論