tarkoitatko tiedostojen käsittelyssä vai komponenttiteksteissä? Perinteiset koodit CR/LF chr(13) chr(10) pätee kai Delphinkin kanssa. Jos tekstitiedostoon kirjoittaa writeln:llä niin rivinvaihdon kohdalla näkyy tekstitiedostossa em. koodit. Samoin esin. Label.Caption tekstissä voidaan saada rivinvaihto aikaan noilla koodeilla, #13 #10 merkintä ajaa saman asian.
0Äänestä
LineEnding
Mitä seuraava rivi tekee:
Memo1.text:='yksi' LineEnding 'kaksi';
Vaihtuuko rivi?
Eli vastaako LineEnding juuri tuota CR/LF koodia?
0Äänestä
Delphi koodari!
LineEnding kirjoitti:
Mitä seuraava rivi tekee:
Memo1.text:='yksi' LineEnding 'kaksi';
Vaihtuuko rivi?
Eli vastaako LineEnding juuri tuota CR/LF koodia?
Sori vaan!
Jos haluat että "haista vittu" on rivin vaihto?
const HaistaVittu = #13 #10; .. .. .. var S: String; begin S := 'Unelma pillu' HaistaVittu 'On Hyvä'; end;
Eli tulos on:
Unelma pillu On Hyvä ...............
Yeaaah!
Nyt kait VB-koodaritkin ymmärtäää!
0Äänestä
vielä siis
LineEnding kirjoitti:
Mitä seuraava rivi tekee:
Memo1.text:='yksi' LineEnding 'kaksi';
Vaihtuuko rivi?
Eli vastaako LineEnding juuri tuota CR/LF koodia?
'LineEnding:iä' ei ole Delphissä. Jos siis haluat pakotetun rivin vaihdon eli 'rivinlopun' niin yksinkertaisimmillaan siis koodissa näin: Memo1.Text :='Eka rivi' #13 #10 'Toka rivi'; tai Memo1.Text := 'Eka rivi' chr(13) chr(10) 'Toka rivi';
0Äänestä
LineEnding
No löytyykö Delphistä DecimalSeparator-nimistä muuttujaa?
uses SysUtils, // Unit containing the DecimalSeparator command
koodiisi.
Ja helppi sitten löytyy F1 takaa
0Äänestä
LineEnding
En saanut siitä käsitystä että löytyykö Delphistä LineEnding:ä (vertaa siihen että kun kysyin löytyykö DecimalSeparator ja sain siihen vastauksen että löytyy)
0Äänestä
Mika0800
delphissä (ainakin Delphi7) on sLineBreak.
on merkkijonovakio, jonka arvo on ^M^J eli toisin ilmaistuna #13#10
Vastaavasti Kylixissä tuo sLineBreak on merkkivakio, jonka arvo on #10 eli ^J
esim. TStrings -luokan SaveToStream (ja sitä hyväksi käyttävä SaveToFile) käyttävät tuota vakiota päättäessään, mitä kirjoitetaan rivinvaihtomerkiksi/merkkipariksi tulosStreamiin (tai tiedostoon).
Vastaukset 8
Vanhimmat
tarkoitatko tiedostojen käsittelyssä vai komponenttiteksteissä? Perinteiset koodit CR/LF chr(13) chr(10) pätee kai Delphinkin kanssa.
Jos tekstitiedostoon kirjoittaa writeln:llä niin rivinvaihdon kohdalla näkyy tekstitiedostossa em. koodit. Samoin esin. Label.Caption tekstissä voidaan saada rivinvaihto aikaan noilla koodeilla, #13 #10 merkintä ajaa saman asian.
Mitä seuraava rivi tekee:
Memo1.text:='yksi' LineEnding 'kaksi';
Vaihtuuko rivi?
Eli vastaako LineEnding juuri tuota CR/LF koodia?
Sori vaan!
Jos haluat että "haista vittu" on rivin vaihto?
const
HaistaVittu = #13 #10;
..
..
..
var
S: String;
begin
S := 'Unelma pillu' HaistaVittu 'On Hyvä';
end;
Eli tulos on:
Unelma pillu
On Hyvä
...............
Yeaaah!
Nyt kait VB-koodaritkin ymmärtäää!
'LineEnding:iä' ei ole Delphissä.
Jos siis haluat pakotetun rivin vaihdon eli 'rivinlopun' niin yksinkertaisimmillaan siis koodissa näin:
Memo1.Text :='Eka rivi' #13 #10 'Toka rivi';
tai
Memo1.Text := 'Eka rivi' chr(13) chr(10) 'Toka rivi';
No löytyykö Delphistä DecimalSeparator-nimistä muuttujaa?
http://www.delphibasics.co.uk/RTL.asp?Name=DecimalSeparator
eli tarvitset lauseen
uses
SysUtils, // Unit containing the DecimalSeparator command
koodiisi.
Ja helppi sitten löytyy F1 takaa
En saanut siitä käsitystä että löytyykö Delphistä
LineEnding:ä (vertaa siihen että kun kysyin löytyykö DecimalSeparator ja sain siihen vastauksen että
löytyy)
delphissä (ainakin Delphi7) on sLineBreak.
on merkkijonovakio, jonka arvo on ^M^J eli toisin ilmaistuna #13#10
Vastaavasti Kylixissä tuo sLineBreak on merkkivakio, jonka arvo on #10 eli ^J
esim. TStrings -luokan SaveToStream (ja sitä hyväksi käyttävä SaveToFile) käyttävät tuota vakiota päättäessään, mitä kirjoitetaan rivinvaihtomerkiksi/merkkipariksi tulosStreamiin (tai tiedostoon).