C++ builder XE listview组件表格数据保存与载入实例

以下实例是将listview组件表格中的数据保存到文件中,然后也可以载入的处理方法。

先将listview数据表格每一行读取出来当成一条记录装入TStringList内,再保存出来。载入过滤相反。

//---------------------------------------------------------------------------

//保存listview表格数据文件

void __fastcall TForm1::RzToolButton6Click(TObject *Sender)
{
//保存条件
        TStringList *TJstr=new TStringList();
        TJstr->Clear();
        for (int i = 0; i <RzListView1->Items->Count ; i++)
        {
           TJstr->Add(RzListView1->Items->Item[i]->Caption +"$"+
               RzListView1->Items->Item[i]->SubItems->Strings[0] +"$"+
               RzListView1->Items->Item[i]->SubItems->Strings[1] +"$"+
               RzListView1->Items->Item[i]->SubItems->Strings[2] +"$"+
               RzListView1->Items->Item[i]->SubItems->Strings[3] +"$"+
               RzListView1->Items->Item[i]->SubItems->Strings[4]  );
        }
        //TJstr->DelimitedText=AnsiReplaceStr(TJstr->DelimitedText,"\r\n","|");
  //保存交集容错注数
    Form5->SaveDialog1->Title="请选择保存文件!";
    Form5->SaveDialog1->Filter="保存属性(*.ftj)|*.ftj|ALL Files(*.*)|*.*";
    //设置文件过滤条件
    Form5->SaveDialog1->DefaultExt=String("ftj");
    //设置缺省扩展名
    if(Form5->SaveDialog1->Execute())
    {
        TJstr->SaveToFile(Form5->SaveDialog1->FileName.c_str());
    }

}
//---------------------------------------------------------------------------

//载入listview表格数据文件。

void __fastcall TForm1::RzToolButton7Click(TObject *Sender)
{
  //载入条件
    Form5->OpenDialog1->Title="请选择载入文件!";
    Form5->OpenDialog1->Filter="载入属性(*.ftj)|*.ftj|ALL Files(*.*)|*.*";
    //设置文件过滤条件
    Form5->OpenDialog1->DefaultExt=String("ftj");
    //设置缺省扩展名
    if(Form5->OpenDialog1->Execute())
    {
      TListItem *pItem=0;
      TStringList *TJfile;
      TJfile=new TStringList;
      TJfile->Delimiter='|';
      TStringList *TJs=new TStringList;
      TJs->Delimiter='$';
      AnsiString Sa=Form5->OpenDialog1->FileName;
      TJfile->LoadFromFile(Sa.c_str());
      //保存数据
      RzListView1->Items->Clear();

      for(int i=0;i<TJfile->Count;i++)
      {
         TJs->DelimitedText=TJfile->Strings[i];  //载入每条记录
           pItem=RzListView1->Items->Add();
           pItem->Caption=TJs->Strings[0];  //  ;
           pItem->SubItems->Add(TJs->Strings[1]);
           pItem->SubItems->Add(TJs->Strings[2]);
           pItem->SubItems->Add(TJs->Strings[3]);
           pItem->SubItems->Add(TJs->Strings[4]);
           pItem->SubItems->Add(TJs->Strings[5]);

      }
      delete TJfile;
      delete TJs;
    }
}

发布了41 篇原创文章 · 获赞 12 · 访问量 7030

猜你喜欢

转载自blog.csdn.net/lzksword/article/details/103779295