C++文件输入输出

来源:互联网 发布:mac unix 可执行文件 编辑:程序博客网 时间:2024/05/29 07:30

常见的文本文件格式输出方法如下

                      char * File2 = "norms.txt";
                      ofstream outfile2(File2);

                               outfile2 << endl; 

                                vector<int>PointNormals;

                               int jj = 0;

while (jj < PointNormals.size())
{
outfile2 << setiosflags(ios::fixed)<<setw(20)<<PointNormals[jj]<< " ";
if (!((jj + 1) % 3))
{
outfile2 << endl;
}


jj++;

}

                              PointNormals.resize(0);

                              outfile2.close();

输入例子如下

      ReadPoints_Resample(readMode _rm){

     m_NumOfPoint = 0;
    ifstream infile(filename,ios_base::in);
if (!infile)
{
return ;
}
m_Points.resize(WNUM);
for (int i = 0; i < WNUM; i++)
{
m_Points[i].resize(HNUM);
}
for (int i = 0; i < WNUM; i++)
{
for (int j = 0; j < HNUM; j++)
{
m_Points[i][j].resize(DNUM);
}
}
ofstream outfile("original.txt");
if (_rm == WITH_VOL_COORD)
{
for (int i = 0; i < WNUM; i++)
{
for (int j = 0; j < HNUM; j++)
{
for (int k = 0; k < DNUM; k++)
{
double t_x, t_y, t_z, t_vol;
infile >> t_vol;
infile >> t_x >> t_y >> t_z;
                                       t_point.x = AIR_AFFINE(0, i, WNUM - 1, minX, maxX);
t_point.y = AIR_AFFINE(0, j, HNUM - 1, minY, maxY);
t_point.z = AIR_AFFINE(0, k, DNUM - 1, minZ, maxZ);
//outfile << t_point.vol << " " << t_point.x << " " << t_point.y << " " << t_point.z << endl;
m_Points[i][j][k] = t_point;
}
}
}
}else if(_rm == WITH_ONLY_VOL){

double max_vol = -1;
for (int i = 0; i < WNUM; i++)
{
for (int j = 0; j < HNUM; j++)
{
for (int k = 0; k < DNUM; k++)
{

NorPoint t_point;
double t_vol;
infile >> t_vol;

t_point.vol = t_vol;
t_point.x = AIR_AFFINE(0, i, WNUM - 1, minX, maxX);
t_point.y = AIR_AFFINE(0, j, HNUM - 1, minY, maxY);
t_point.z = AIR_AFFINE(0, k, DNUM - 1, minZ, maxZ);


//蚂蚁体数据阈值选为-0.2


if (t_vol > 0.3)
{
t_point.vol = 1;
m_NumOfPoint += 1;
outfile << t_point.vol << " " << t_point.x << " " << t_point.y << " " << t_point.z << endl;


}else{
t_point.vol = 0;
}


m_Points[i][j][k] = t_point;


}
}
}


}else{




for (int i = 0; i < WNUM; i++)
{
for (int j = 0; j < HNUM; j++)
{
for (int k = 0; k < DNUM; k++)
{
NorPoint t_point;


t_point.x = AIR_AFFINE(0, i, WNUM - 1, minX, maxX);
t_point.y = AIR_AFFINE(0, j, HNUM - 1, minY, maxY);
t_point.z = AIR_AFFINE(0, k, DNUM - 1, minZ, maxZ);


if (k == -j + DNUM)
{
t_point.vol = 1.0;
m_NumOfPoint += 1;
outfile << t_point.vol << " " << t_point.x << " " << t_point.y << " " << t_point.z << endl;
}else{


t_point.vol = 0.0;
}

m_Points[i][j][k] = t_point;


}
}
}


}


outfile.close();

0 0
原创粉丝点击