Cum să eliminați linii goale din memo

Cum să ștergeți linii goale din Memo?

Salvez conținutul Memo într-un fișier txt.
Cum mă asigur că atunci când salvez, liniile goale sunt șterse automat?

Stroka_1






Stroka_2
Stroka_3
# xA0; # xA0; # xA0; # xA0; # xA0; # xA0; # xA0; # xA0;<--удалить
Stroka_5
Stroka_6

Treceți prin toate liniile (Memo1.Lines) de la capăt (pentru i: = Memo1.Lines.Count - 1 downto 0 do.). Dacă întâlnim un șir (Memo1.Lines [i]), care este gol (= ""), ștergeți-l cu Memo1.Lines.Delete (i)

Ca asta - este scris în câteva secunde, poate că nu funcționează.

număr: = 0;
repeta
dacă lungimea (memo1.lines [count]) = 0
# xA0; apoi memo1.lines.delete (count)
altfel
inc (număr)
până la (numărul<>memo1.lines.count);


> Roun # xA0; (07.08.07 16:08)
>
> Salvez conținutul Memo într-un fișier txt.
> Cum să vă asigurați că, atunci când salvați, linii goale în mod automat
> au fost eliminate?
>

Nu scrieți linii goale într-un fișier txt.


> Nu scrieți linii goale în fișierul txt.

el probabil scrie prin intermediul SaveTofile.


> probabil scrie prin intermediul SaveTofile.
>

Atunci subiectul
> Cum să vă asigurați că, atunci când salvați, linii goale în mod automat






> au fost eliminate?

nu are nici o soluție.


> repetați
> dacă lungimea (memo1.lines [count]) = 0

Deci, nu este necesar să facem, de fapt, trei erori

1. memo1.lines.count poate fi egal cu zero, bine, dacă aveți noroc și zburați din greșeală

2. Lungimea unui șir cu cel puțin o martor va fi mai mare decât zero

3. până la (numărul<>memo1.lines.count); numai o dată sau de două ori. Și dacă puneți până (count = memo1.lines.count); atunci riscul de ciclism se apropie de unitate la număr = 0

Rezumând sfatul dvs. este:
pentru i: = Memo1.Lines.Count - 1 downto 0 face
# xA0; dacă Memo1.Lines [i] = "" atunci Memo1.Lines.Delete (i);
dacă Memo1.Lines.Count> 0 atunci
și mai mult SaveTofile

> Și cele mai multe pentru a verifica lenea?

Îți sugerați să acționezi prin încercări? Prin principiul: "lucrări - înseamnă calea cea bună"?
De obicei, orice problemă este rezolvată mai întâi într-o schiță (pe o bucată de hârtie), dar abia apoi realizată.


> De obicei, orice problemă este rezolvată mai întâi pe o schiță (pe o foaie
> hârtie), și numai atunci face afară.

Ei bine, deci decizi, cine te oprește?
dacă nu poți decide pe hârtie, atunci rămâne o metodă de încercare. și în acest lucru nu există nimic teribil IMHO.

> [7] Roun # xA0; (07.08.07 21:19)
> Deci se pare?

Dacă spațiile nu sunt un șir gol, atunci [7] sau așa:
în timp ce Pos (# 13 # 10 # 13 # 10, Memo1.Text)> 0 face
# xA0; Memo1.Text: = StringReplace (Memo1.Text, # 13 # 10 # 13 # 10, # 13 # 10, [rfReplaceAll]);

În caz contrar, în [7] dacă Trim (Memo1.Lines [i]) = "" atunci.
Poți și încă mai veni. programare așa cum este programată și va fi.

Memorie: 0,74 MB
Durată: 0,097 sec







Trimiteți-le prietenilor: