+ -
当前位置:首页 → 问答吧 → 求帮助! 关于把对象数组中的值保存到.txt文件中

求帮助! 关于把对象数组中的值保存到.txt文件中

时间:2011-12-24

来源:互联网

我现在知道从.txt中读取数据的方法
如:
ifstream output;
output.open("xuanke.txt");
if(!output) cout<<"error!"<<endl;
for(i=0;i<=9;i++)
{
  output>>xuanke[i].num>>xuanke[i].name>>xuanke[i].nature>>xuanke[i].Ztime>>xuanke[i].SHtime
  >>xuanke[i].shangtime>>xuanke[i].credit>>xuanke[i].xueqi;

}


现在我想知道怎么用write函数把对象数组中的数据写入到一个.txt文件中,自己建立txt文件还是函数自动建立。求详解加例子
还有上面的这个for循环是干嘛的,是读的过程吗?

作者: jietou_xiaoqi   发布时间: 2011-12-24

自已指定文件的格式,然后写相应的读写代码就可以了

作者: heartlesstoanyone   发布时间: 2011-12-24

这读取流文件老师都没讲 自己看书看了点
上面的代码都是搜的
具体怎么实现 给个示例么

作者: jietou_xiaoqi   发布时间: 2011-12-24

不一定要write,可以用输出操作符,既然你搜的例子是用输入操作符

C/C++ code
int main()
{
    const int n=10;
    int arr[n]; // 以整型数组为例
    
    {
        for(int i=0;i<n;++i)
            arr[i]=i*i; // i的平方
        ofstream s("test.txt"); // 打开输出流
        for(int i=0;i<n;++i)
            s <<arr[i] <<endl; // 挨个输出
        s.close(); // 关闭输出流
    }

    {
        ifstream s("test.txt"); // 打开输入流
        for(int i=0;i<n;++i)
            s >>arr[n-1-i]; // 挨个输入,颠倒一下以示区别
        s.close(); // 关闭输入流

        for(int i=0;i<n;++i)
            cout <<arr[i] <<endl;
    }

    return 0;
}

作者: yisikaipu   发布时间: 2011-12-24

for(i=0;i<=9;i++)
{
  output>>xuanke[i].num>>xuanke[i].name>>xuanke[i].nature>>xuanke[i].Ztime>>xuanke[i].SHtime
  >>xuanke[i].shangtime>>xuanke[i].credit>>xuanke[i].xueqi;

}
这就是给数组xuanke[10]赋值的过程。num,name,nature...是这个数组里元素的 数据成员

作者: qscool1987   发布时间: 2011-12-25