请问如何用C++编程实现:从一个txt文件中读取三维数组(点云数据),然

请问如何用C++编程实现:从一个txt文件中读取三维数组(点云数据),然后存储到一个三维矩阵中,再将数据存储到另一个txt文件当中,求助各位大神,重谢!

所要读取的文件格式,所要输出的文件样式,直接把点云数据的一部分贴上来追问

读取的是TXT格式的数据,输出的也是TXT格式,在这个过程中要先把数据存储到矩阵中再输出,是点云数据:
11 13 14
12 15 16
13 14 16
16 13 13
这只是一部分

追答

好的,一会给你代码

追问

谢谢,实在是小白,刚学C++

追答#include <stdio.h>
#define N 3

int main()
{
    int v[N][N], i;
    FILE *fIn,*fOut;

    if((fIn=fopen("f1.txt","r"))==NULL) {
        printf("Source file not found!\n");

    }else{
        //显示f1内容
        printf("f1.txt:\n");
        system("type f1.txt");
        fOut = fopen("f2.txt","w");
        while(!feof(fIn)) {
            for( i = 0; i < N; ++i){
                fscanf(fIn,"%d %d %d",&v[i][0],&v[i][1],&v[i][2]);
            }
            for( i = 0; i < N; ++i){
                fprintf(fOut,"%d,%d,%d\n",v[i][0],v[i][1],v[i][2]);
            }
        }
        fclose(fIn);
        fclose(fOut);
        printf("\n-----------Ok!\n");
        //显示f2内容
        printf("f2.txt:\n");
        system("type f2.txt");
    }

    return 0;
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-08-21
#include <fstream>
using namespace std;

ifstream myfile("D:/test.txt");
char buffer[256];
glBegin(GL_POINTS);
while (myfile.peek() != EOF)
{
myfile.getline(buffer, 200);
sscanf_s(buffer, "%f,%f,%f", &x, &y, &z);
glVertex3f(x, y, z);
}
glEnd();

opengl读取点云的
相似回答