PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
C_and_CPP
[问题] c++导入TXT档资料存成double二微阵列
楼主:
chingying0
(吸猫suck cat)
2022-11-21 02:32:59
Win10
GCC
小弟需要将一个txt档的资料存成double型态的二维阵列
资料来源如附图
https://imgur.com/a/bdjQbiR
是一个144列*3行的数据
这是我的code
#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
using namespace std;
int main() {
ifstream inFile("Point_After.txt");
const int xsize = 3;
const int ysize = 144;
double (*arr)[xsize] = new double[ysize][xsize];
string line;
int y = 0;
while(getline(inFile,line)) {
istringstream ss(line);
double num;
int x = 0;
while(ss >> num) {
arr[y][x] = num;
++x;
}
++y;
}
inFile.close();
for(int y = 0; y != ysize; ++y) {
for(int x = 0; x != xsize; ++x) {
cout << arr[y][x] << " ";
}
cout << endl;
}
delete []arr;
return 0;
}
这是我执行后的结果
https://imgur.com/a/KakhsWZ
想请问各位前辈为何无法成功
谢谢
主要问题我想出在字串转成double无法成功
楼主:
chingying0
(吸猫suck cat)
2022-11-21 02:38:00
getline的delimiter有加'v' 执行结果如下
https://imgur.com/a/ZkULZSE
作者:
ko27tye
(好滋好滋)
2022-11-21 08:58:00
你没处理每行资料内的空格吧
作者:
mihonisizumi
(中原岬マジ天使)
2022-11-21 12:49:00
因为你每行前面有 'v' 所以转失败getline 不加 delim,然后在 while(ss >> num) 前面加上char c;ss>>c;
作者:
wulouise
(在线上!=在电脑前)
2022-11-22 22:37:00
你的v跟空白没处理吧
继续阅读
[问题] 使用controller控制Mininet的flow rate
c850908
[问题] 在if判断式里面赋值与加上|| &&
Hyozero
[问题] Qt使用connect的疑问
Vvvahc
[问题] 用#if判断variable的值
Hyozero
[问题] 类别内有常数阵列,初始化且供调用
okeyla
[公告] 副板主lc85301上任,有限开放rust讨论
wtchen
[问题] sqlite update 无效
liu2007
[问题] opencv/open source 如何找到source code
nicha115
[问题] 函式抓不到参数
dblkc
[公告] 征副板主管理rust相关事务
wtchen
Links
booklink
Contact Us: admin [ a t ] ucptt.com