Strona 1 z 1

ListBox z pliku txt

Nowy postNapisane: poniedziałek, 18 lipca 2011, 17:13
przez rafalskraba
Witam
Mam w pliku txt zapisane dane rozdzielone średnikiem
np:
Kod: Zaznacz cały
1;a
2;b

Jak wczytać dane przed średnikiem do jednego list boksa a za średnikiem do drugiego list boxa.

Re: ListBox z pliku txt

Nowy postNapisane: poniedziałek, 18 lipca 2011, 18:01
przez Cyfrowy Baron
Można np. tak:

Przykład dla C++Builder 2010 z mapowaniem ustawionym na wchar_t: _TCHAR maps to = wchar_t
KOD cpp:     UKRYJ  
 String sFileName = ExtractFilePath(ParamStr(0)) + "plik.txt";

 if(!FileExists)
 {
  Application->MessageBox(L"Nie odnaleziono pliku", Application->Title.c_str(),
                                                  MB_OK | MB_ICONSTOP);
  return;
 }

 TStringList * tmpList = new TStringList;
 tmpList->LoadFromFile(sFileName);
 tmpList->NameValueSeparator = ';';
 /*
  ustawienie separatora dla rozdzielenia
  sekcji Names od Value,
  czyli np: 1;a
  gdzie:
  1 to Names,
  a to Values - tutaj ValueFromIndex
  ; to separator rozdzielajacy
 */


 int x = 0;

 ListBox1->Items->Clear();
 ListBox2->Items->Clear();

 while(x < tmpList->Count)
 {

  String sFirstValue  = tmpList->Names[x];
  String sSecondValue = tmpList->ValueFromIndex[x];

  ListBox1->Items->Add(sFirstValue);
  ListBox2->Items->Add(sSecondValue);

  x++;
 }

 delete tmpList;

Re: ListBox z pliku txt

Nowy postNapisane: piątek, 22 lipca 2011, 22:39
przez rafalskraba
Witam

Wielkie dzięki Baronie za podpowiedź. Wszystko działa poprawnie. Jednak jak znajdę chwilkę czasu napiszę funkcję która nie będzie się ograniczała tylko do "2 kolumn". Będzie możliwość deklarowania liczby wybieranych kolumn.

Pozdrawiam

Rafał