C++对CSV文件的读写

C++文件操作(txt和csv)
操作文件必须包含的头文件:#include
写入:

int main ()
{

string fileName = “e:\vs2012\file\a.csv”;

ofstream file(fileName);
if(!file){cout << “open file error” <<endl; return 0;}
for (int i = 0; i < 1000000; i++)
{
file<<i<<",username"<<i<<",pw"<<i<<"\n";
}

file.close();
}
读取:
string str;
ifstream file(fileName , ios::in);
file>>str;
cout << str <<endl;

while(!file.eof()){    //多行读取
getline(file,str);
cout<<str<<endl;
}

文件打开方式选项:
    ios::in    = 0x01, //供读,文件不存在则创建(ifstream默认的打开方式)
    ios::out    = 0x02, //供写,文件不存在则创建,若文件已存在则清空原内容(ofstream默认的打开方式)
    ios::ate    = 0x04, //文件打开时,指针在文件最后。可改变指针的位置,常和in、out联合使用
    ios::app    = 0x08, //供写,文件不存在则创建,若文件已存在则在原文件内容后写入新的内容,指针位置总在最后
    ios::trunc   = 0x10, //在读写前先将文件长度截断为0(默认)
    ios::nocreate = 0x20, //文件不存在时产生错误,常和in或app联合使用
    ios::noreplace = 0x40, //文件存在时产生错误,常和out联合使用
    ios::binary  = 0x80  //二进制格式文件

CSV格式的文件,可以用excel打开,格式和txt一样,每列用英文逗号隔开,每行用\n

方法1:(c语言)

int main()
{
FILE *f;
f = fopen(“e:\a.csv” , “wb”);
fprintf(f,“aaa,23,sdf\n”);
fprintf(f,“bbb/,345,2sdf\n”);
fclose(f);
return 0;
}

load data infile ‘E:\vs2012\file\a.csv’ into table test fields terminated by ‘,’ optionally enclosed by ‘"’ lines terminated by ‘\r\n’;

1
2
3
4
5
6
7
8

//判断文件是否存在的方法,
WIN32_FIND_DATA FindFileData;
HANDLE hFind;
hFind = FindFirstFile(file_path.c_str(), &FindFileData);
if(hFind == INVALID_HANDLE_VALUE){
cout<<“failed”<<endl;
printf("%d", GetLastError());
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值