[BCB] Lege regel uit memo halen

Pagina: 1
Acties:

  • 0123456
  • Registratie: Maart 2005
  • Laatst online: 28-07-2010
Ik ben nog steeds bezig met mijn programma, om meerdere bestanden samen te voegen tot 1 bestand in CBuilder 6

Nou heb ik het al voor elkaar om alle bestandsnamen van de te openen bestanden, samen te krijgen in een Memo, maar BCB gooit er zelf lege regels tussen en ik zie niet waar.
Ik heb al vanalles gezocht en niks gevonden over het verwijderen van die lege regels...
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
for (Datum1 = StrToInt(Datum); Datum1 <= Datum2; Datum1++)
{
  Datum = Datum1;
  if (FileMaak == 0)
  {
    Bestand = "Fouten week "+WeekNummer+".txt";
    FileClose(FileCreate(Bestand));
    FileMaak = 1;
  }
  else if (FileMaak == 1)
  {
    FileListBox1->FileName ="Fouten "+Datum+" *";
    for (j=0;j<=FileListBox1->ItemIndex;j++)
    {
      FileListBox1->ItemIndex = j;
      If (Memo1->Text == "")                   <=Dit stukje werkt dus niet....
      { 
        Memo1->Lines->Delete();
      }
      Memo1->Lines->Append(FileListBox1->Items->Text);
    }
  }
}

Het is volgens mij heel simpel maar ik zie het ff niet :+
Iemand ideeen????

  • 0123456
  • Registratie: Maart 2005
  • Laatst online: 28-07-2010
Sorry, even een klein kickje...

Maar is er iemand die de oplossing weet???

  • Eelke Spaak
  • Registratie: Juni 2001
  • Laatst online: 30-04 10:48

Eelke Spaak

- Vlad -

Misschien kan je erachter komen of (Memo1->Text == "") wel ooit true oplevert. Misschien definiëert dat Text-veld geen overloaded == operator die een string accepteert?

TheStreme - Share anything with anyone


  • 0123456
  • Registratie: Maart 2005
  • Laatst online: 28-07-2010
Die Memo1->Text == "" werkt, het probleem is dan dat de delete niet werkt.

Ik heb ook gekeken of het mogelijk om de controle achteraf te doen, dus eerst de memo vullen en dan controleren op lege regels.

Iemand voor 1 van deze twee (of iets anders) een oplossing???

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 22:26

Creepy

Tactical Espionage Splatterer

Wat wil je nu precies bereiken? In je code haal je nu een regel weg uit de memo als je gehele memo geen tekst bevat. Dat lijkt me toch niet te kloppen. memo1->text is alle tekst van alle regels uit je memo. memo1->lines kan je als een array benaderen indien je losse regels op inhoud wilt checken.

Kijk eerst eens of dat wat je nu in je memo stopt, geen regeleindes bevatten. Als dat niet het geval is, voeg dan die tekst gewoon toe met lines->add(); Zo moet wel te voorkomen zijn dat je extra (lege) regels krijgt.

Als je dat echt niet kan voorkomen, loop dan nadat je memo is gevuld alle regels van de memo door en haal de lege regels er tussen uit.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • 0123456
  • Registratie: Maart 2005
  • Laatst online: 28-07-2010
Dat laatste is ook mijn bedoeling, maar hoe doe ik dat???

Ik heb al een tel functie, maar ik geloof dat die al niet goed werkt :?
Ik zie in ieder geval in de debug modus een Data:NULL staan, behalve bij de eerste waarde daar is het Data:""
code:
1
2
3
4
for (int k=0;k<=Memo1->Lines->Count;k++)
{
  AnsiString test1 = Memo1->Lines->Strings[k];
}

Hoe maak ik dit nu werkend??

  • Belgar
  • Registratie: Januari 2002
  • Laatst online: 22-09-2025

Belgar

Archmaster ranzige code..

code:
1
Memo1->Lines->Assign(FileListBox1->Items)

:?

...Als het maar werkt

Pagina: 1