想問問大神們有甚麼想法,
需要讀取外部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;
}