Forum: Cross-Platform-Entwicklung
by himitsu,
23. Dez 2013
if Copy(MeineOrdentlichSprechendeVariable, 1, 1) = 'x' then // nääääää und würde in einem Benchmark gnadenlos ausscheiden
if LeftStr(MeineOrdentlichSprechendeVariable, 1) = 'x' then // nääääää
if FirstCharIs(MeineOrdentlichSprechendeVariable, 'x') then
if CharIs(MeineOrdentlichSprechendeVariable, 1, 'x') then
if (MeineOrdentlichSprechendeVariable <> '') and...
Forum: Cross-Platform-Entwicklung
by himitsu,
22. Dez 2013
Noch nicht optimiert genug? :roll:
// splitt long lines
for I := Lines.Count - 1 downto 0 do
begin
if Length(Lines) > 1000 then
begin
for I2 := Length(Lines) div 1000 - 1 downto 0 do
Lines.Insert(I + 1, Copy(Lines, (I2 * 1000) + Low(string), 1000));
Delete(I);
Forum: Cross-Platform-Entwicklung
by himitsu,
22. Dez 2013
Das GetText ist eines der Engstellen (wenn auch die Größte) ... dieses hatte ich etwas abgeändert, so daß erst gesucht und dann der Text als ein Stück rauskopiert und gelöscht wird.
Das macht dann ein Insert+Delete pro Tag (jeweils von < bis >) und dann nochmal pro Part (die Einzelteile im Tag) und nicht mehr überall pro einzelnes Zeichen.
> siehe ExtractText ... umbenannt, da es den Text...
Forum: Cross-Platform-Entwicklung
by himitsu,
20. Dez 2013
Ohh, hatte man hier nie was von gehört.
Gut, beim Migrieren weiß man das nun, jetzt muss man es nur noch wissen, wenn man etwas neu entwickelt.
Aber ich finde es dennoch etwas "unglücklich", da es ja bei X-Plattform ja nun noch mehr "grundlegende" Unterschiede gibt.
Forum: Cross-Platform-Entwicklung
by himitsu,
20. Dez 2013
Das ist doch nicht wirklich deren Ernst?
@mkinzler:
Ich hatte mich vor ein paar Tagen zwar im Delphi-Code gewundert,
aber langsam bekommt das eine "Sinn", auch wenn ich es für "Unsinn" halte, das einfach so ein jahrzehntelange Standardverhalten zu ändern, ohne es laut zu sagen.
s = s {von früher}
Forum: Cross-Platform-Entwicklung
by himitsu,
20. Dez 2013
Wie sieht es denn hier aus?
XMLObj.Ident := '';
Memo1.Lines.Text := XMLObj.Text;
Forum: Cross-Platform-Entwicklung
by himitsu,
20. Dez 2013
Ich glaub fast der TStreamReader hat da einen Bug, denn der Dennis er selber behandelt die Zeilenumbrüche nicht selber.
Obwohl TStreamReader.ReadLine eigentlich diesbezüglich OK aussieht. (zumindestens hier im XE)
- außer beim Speichern (und da war der erste Bug, welcher aber nicht zu diesem Fehler führt > Beim mehrmaligen Umstellen von Ident wird der Zeilenumbruch nicht wiederhergestellt)
...