Matlab 与 c++对txt 文档的读写格式
- 学习g++能够读取什么格式的txt文件。
读基本指令:
>sprintf(filename,
"doc_%d.txt",
d);>fileptr
=
fopen(filename,
"r");>while
((fscanf(fileptr,
"%d ")
!=
EOF))> {fscanf(fileptr,
"[%d,%d]",
&s1,
&s2);}fclose(fileptr);
写基本指令:
>fileptr
=
fopen("result_1.txt",
"w");>fprintf(fileptr,
"(%d)",
x);>fprintf(fileptr,
"\n");>fclose(fileptr);
具体的代码及要完成的简单任务描述如下:
// TestForReadTXT_Windows.cpp : 定义控制台应用程序的入口点。
//,读取doc_1.txt中的n行数据,并写入vector中,这里不进行运算,直接将xy坐标写回名为result_1.txt的文件中。
//数据在txt中的存放格式是3条轨迹以固定格式存储的轨迹数据
//5 [3,0](448,26,11)(447,26,13)(447,27,16)(447,28,17)(448,28,20)
//9 [0, 2](282, 101, 1436)(282, 102, 1437)(283, 102, 1440)(283, 101, 1442)(284, 101, 1445)(285, 101, 1447)(284, 101, 1448)(283, 101, 1451)(282, 101, 1455)
//3 [0,0](407,37,678)(406,37,682)(405,37,684)
//其中第一个代表元素个数,[]代表起止点,(x,y,t)代表轨迹信息
#include
"stdafx.h"
#include
<iostream>
#include
<vector>
using
namespace
std;
typedef
struct{
int
x;
int
y;
size_t
t;
}
Point;
class
Trajectory{
public:
//Trajectory();
size_t
length;
char
source;
char
sink;
vector<Point>
d_point;
};
int
_tmain(int
argc,
_TCHAR*
argv[])
{
size_t
d,
i;
int
length,
x,
y,
t,
s1,
s2,
numTrk
=
0;
Point
p;
Trajectory*
traj;
vector<Trajectory>
TD;
char
filename[100];
FILE
*fileptr;
printf("load data ...\n");
for
(d
=
1;
d
<
2;
d++){
//sprintf(filename, "trks_grand_ss8.txt");
sprintf(filename,
"doc_%d.txt",
d);
//sprintf(filename, "parkinglot_trk.txt");
fileptr
=
fopen(filename,
"r");
while
((fscanf(fileptr,
"%d ",
&length)
!=
EOF))//原始数据中的每行第一个数代表轨迹的长度
{
traj
=
new
Trajectory();
fscanf(fileptr,
"[%d,%d]",
&s1,
&s2);//原始数据中的每行第2个代表source,sink点是否被观察
/* traj->d_source=s1;
traj->d_sink=s2;*/
for
(i
=
0;
i
<
length;
i++){
fscanf(fileptr,
"(%d,%d,%d)",
&x,
&y,
&t);
p.x
=
x;
p.y
=
y;
p.t
=
t;
traj->d_point.push_back(p);// (i, p, s1, s2);
}
fscanf(fileptr,
"\n");
traj->sink
=
s1;
traj->source
=
s2;
traj->length
=
length;
TD.push_back(*traj);
//d_trajSet.push_back(*traj);
//d_trajSet[numTrk].trkSource = s1;
//d_trajSet[numTrk].trkSink = s2;
//printf("cur TrkSource is %d, curTrkSink is %d. \n", d_trajSet[numTrk].trkSource,d_trajSet[numTrk].trkSink);
//system( "pause ");
numTrk++;
delete
traj;
}
fclose(fileptr);
}
printf("%d trajectories are loaded. \n",
numTrk);
fileptr
=
fopen("result_1.txt",
"w");
for
(int
k
=
0;
k
<
numTrk;
k++){
for
(int
w
=
0;
w
<
TD.at(k).length;
w++){
fprintf(fileptr,
"(%d)",
TD.at(k).d_point.at(w).x);
}
fprintf(fileptr,
"\n");
for
(int
w
=
0;
w
<
TD.at(k).length;
w++){
fprintf(fileptr,
"(%d)",
TD.at(k).d_point.at(w).y);
}
fprintf(fileptr,
"\n");
}
fclose(fileptr);
return
0;
}
写入result_1之后的结果如下:
(448)(447)(447)(447)(448)
(26)(26)(27)(28)(28)
(282)(282)(283)(283)(284)(285)(284)(283)(282)
(101)(102)(102)(101)(101)(101)(101)(101)(101)
(407)(406)(405)
(37)(37)(37)
程序在Ubuntu中的配置:需要多加一个在vc中包含于iostream中的头文件 #include<stdio.h>
在VC中用sprintf(filename,
"..//..//..//data/doc_%d.txt",
d);来表征上层目录。
Matlab 与 c++对txt 文档的读写格式的更多相关文章
- 用matlab查找txt文档中的关键字,并把关键字后面的数据存到起来用matlab处理
用matlab查找txt文档中的关键字,并把关键字后面的数据存到起来用matlab处理 我测了一组数据存到txt文件中,是个WIFI信号强度文档,里面有我们需要得到的数据,有没用的数据,想用matla ...
- 将mat文件中的数据按要求保存到txt文档中(批处理)
之前有个老朋友,让帮忙将一个mat中的数据重新保存到txt中,由于数据比较多需要用到批处理,之前弄过很多次,但每次一到要用的时候总是忘记怎么写了,现在记录一下,免得后面老是需要上网搜.这里先说一个比较 ...
- C# 将内容写入txt文档
<1> FileStream fs = new FileStream(@"D:\text.txt", FileMode.Append); StreamWriter s ...
- QTP操作txt文档
QTP可以在txt文件(文本文件中读取数据) 首先创造一个文档对象 set fso = createObject("scripting.filesystemobject") 然后用 ...
- 利用IDL将一个txt文档拆分为多个
测试.txt文档,每47行的格式相同,通过代码每47行存为一个txt,txt文档命名为其第一行数据. 代码如下: file='G:\data\测试.txt' openr,lun,file,/Get_L ...
- WebService 实现BS环境与BS环境传递参数,根据参数生成txt文档
客户端: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Client.as ...
- 将txt文档按行分割
昨天遇到了一个需求,需要将txt文档按行分割,并指定了行数, 最近在用python,就在网上搜了一下,在参考了http://blog.csdn.net/zhang_red/article/detail ...
- 用C++向一个txt文档中写数据
bool CMaked::WriteFileMake(CString filePath, const char *isChange) { ofstream file; //filePath为该txt文 ...
- 一个简易的Python爬虫,将爬取到的数据写入txt文档中
代码如下: import requests import re import os #url url = "http://wiki.akbfun48.com/index.php?title= ...
随机推荐
- 事件驱动框架EventNext之线程容器
EventNext是.net core下的一个事件驱动的应用框架,通过它代理创建的接口行为都是通过事件驱动的模式进行调用.由于EventNext的所有调用都是基于事件队列来进行,所以在资源控制上非常方 ...
- 页面跨域与iframe通信(Blocked a frame with origin)
项目中有个需求是在前后端分离的情况下,前台页面将后台页面加载在预留的iframe中:但是遇到了iframe和主窗口双滚动条的情况,由此引申出来了问题: 只保留单个滚动条,那么就要让iframe的高度自 ...
- Linux中安装软件和各种常用命令
1.Centos7中安装mysql5.7的链接:http://blog.csdn.net/fanpeizhong/article/details/73557202 2.修改mysql默认密码的链接:h ...
- 【题解】CTSC1999家园(网络流)
CTSC1999家园 建模方法类似我NOI2019网络同步赛我的T1写法[[题解]NOI2019Route](70分) 问题的焦点是:空间时间载具. 考虑如何击破时间限制,可以对每个点关于每个时刻建立 ...
- 洛谷$P4249\ [WC2007]$剪刀石头布 网络流
正解:网络流 解题报告: 传送门$QwQ$ 题目大意其实就说有一个$n$个节点的有向完全图,然后部分边的方向已经给定了,要求确定所有边的方向使三元环数目有$max$.这里三元环的定义是说三条边的方向一 ...
- 6.6 hadoop作业调优
提高速度和性能.可以从下面几个点去优化 可以在本地运行调试来优化性能,但是本地和集群是完全不同的环境,数据流模式也截然不同,性能优化要在集群上测试.有些问题如(内存溢出)只能在集群上重现. HPROF ...
- less实现if else
less没有我们平常使用的if,else条件判断,而是用when来实现这种用法 1.比如我们要设置宽度 宽度可以百分比,也可以是像素,当是百分比时做对应处理,当是px时做另一种处理,这时候就需要用wh ...
- FlashFXP 5.0.0官方中文破解版,附文件下载地址和破解码
FlashFXP 5.0.0官方中文破解版是一个功能强大的 FXP/FTP 软件,融合了一些其他优秀 FTP 软件的优点,如像 CuteFTP 一样可以比较文件夹,支持彩色文字显示:像 BpFTP 支 ...
- 【转】JavaScript 3D图表
文章系本人原创,转载请保持完整性并注明出自<四火的唠叨> 在说3D图表以前,首先要明确两个概念,一个是数据的维度,一个是呈现数据载体的维度.对于数据的维度,一维的数据呈现,但是呈现的载体是 ...
- asp.net core 基于 JSON 实现多语言
asp.net core 基于 JSON 实现多语言 Intro 上次我们提到了,微软默认提供基于资源文件的多语言本地化,个人感觉使用起来不是太方便,没有 json 看起来直观,于是动手造了一个轮子, ...