我有三个字符串文件将存储到动态数组中,但我只是尝试三个文件中的一个来测试这是否成功,所以我将以相同的方式处理我拥有的三个文件。我的目标是将我从文件中获得的字符串显示到我的代码的 ListView 中。
void __fastcall TFrmNewPeta::showDefaultRute() {
std::string lineDataAwal;
std::ifstream ifs_Awal;
int tempIndexAwal = 0;
ifs_Awal.open("DefaultDataAwal");
/*counting the line*/
while(std::getline(ifs_Awal,lineDataAwal)){++tempIndexAwal;}
/*use dynamic array to stored string*/
std::string *s = new std::string[tempIndexAwal];
for(int dx=0;dx<tempIndexAwal;dx++)
{
while(std::getline(ifs_Awal,lineDataAwal))
s[dx] = lineDataAwal[dx++];
}
for(int dex =0;dex<tempIndexAwal;++dex)
{
ItemDefult = ListView1->Items->Add();
ItemDefult->Caption = String(IntToStr(dex + 1));
ItemDefult->SubItems->Add(s[dex].c_str());
}
ifs_Awal.close();
delete []s;
s = NULL;
}
编译期间没有错误,但结果 ListView 只显示带有此代码的数字,ItemDefult->Caption = String(IntToStr(dex + 1));
任何人都可以向我展示我的最佳方法。