想問問大神們有甚麼想法,
需要讀取外部txt檔,但是只需要某幾欄的數據形成陣列,
目前可以順利的讀取多筆數據形成陣列,
只是無法將陣列分成小陣列進行後續運算,
下方是目前的code,
麻煩大家了!!謝謝!!
#include
#include
#include
using namespace std;
const int N=516;
const int M=9;
int main()
{ double data[N][M] = {0};
ifstream infile;
infile.open("benzene1.txt");
for (int i=0;i<516;i++)
{
for (int j=0;j<9;j++)
{
infile>>data[i][j];
}
}
infile.close();
system("pause");
return 0;
}
你可以建立一個結構去處理你需要的特定數據
您也可以選擇性的加入其他欄位
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
const int N = 516;
const int M = 9;
//假設我的檔案格式,每行有10個數值,並且每個數值都與您期望的欄位對應。
struct Data
{
double field1;
double field2;
double field3;
double field4;
double field5;
double field6;
double field7;
double field8;
double field9;
double field10;
};
int main()
{
vector<Data> smallData;
double data[N][M] = {0};
ifstream infile;
infile.open("benzene1.txt");
// 讀取數據並將其放入結構體中
for (int i = 0; i < N; i++)
{
Data d;
infile >> d.field1 >> d.field2 >> d.field3 >> d.field4 >> d.field5 >> d.field6 >> d.field7 >> d.field8 >> d.field9 >> d.field10;
smallData.push_back(d);
}
infile.close();
// 遍歷結構體陣列並輸出其中的數據
for (int i = 0; i < smallData.size(); i++)
{
cout << smallData[i].field1 << " " << smallData[i].field4 << " " << smallData[i].field6 << endl;
}
system("pause");
return 0;
}