文件读写操作

文件读写操作

1.C++

// 打印CSV   逐行写入
#include <fstream>
using namespace std;

std::ofstream f_po("pose.csv", ios::app | ios::out);
f_po << "x" << "," << x << ",";
f_po << "y" << "," << y << ",";
f_po << "yaw" << "," << yaw  << ","<< "\n";
f_po.close();

2.C语言

写入文件

//
#include "stdio.h"
*FILE *f_pose = fopen("vehicle_pose.csv", "a");//
if (f_pose == NULL)//判断文件是否打开失败——fopen打开成功,返回一个指向该文件的文件指针;打开失败,返回NULL。
	{
		perror("fopen");
		return -1;
	}
	//写入
fprintf(f_pose, "%f,%f,%f\n", x , y , yaw );
fclose(f_pose);*/
f_pose = NULL;//关闭文件后,要将原文件指针置为空

写入文件

// An highlighted block
#include "stdio.h"
*FILE *f_pose = fopen("vehicle_pose.csv", "a");
for(int i=0,i<10,i++)
{
	fprintf(f_pose, "%f,%f,%f\n", x[i] , yx[i] , yawx[i] );
}
fclose(f_pose);*/

读文件——fscanf

// An highlighted block
#include "stdio.h"

float a,b;
float aa[]={0};
float bb[]={0};
int j=0; 
//定义文件指针rd 、 打开文件
*FILE *rd= fopen("vehicle_pose.csv", "r");
//判断文件是否打开失败——fopen打开成功.
if (rd== NULL)
	{
		perror("fopen");
		return -1;
	}
//读取文件
 while (fscanf(rd, "%lf,%lf", &a, &b) != EOF)
	{
		aa[j] = a;
		bb[j] = a;
		j= j+ 1;
	}
fclose(rd);
rd= NULL;//关闭文件后,要将原文件指针置为空

fscanf功能:

格式化输入函数,从一个文件流中执行格式化输入,当遇到空格或者换行时结束。注意该函数遇到空格时也结束,这是其与 fgets 的区别,fgets 遇到空格不结束。
输入成功时,返回成功输入的数据个数;
输入失败,或已读取到文件结尾处,返回 EOF。
所以,如果想循环输入时,可以用fscanf的返回值判断读取是否结束

参数:
stream:要输入的文件指针;
剩余参数与scanf相同,格式控制串+输入地址表列。

头文件:
#include “stdio.h”

在这里插入图片描述

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值