Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   CR LF in Android App (https://www.delphipraxis.net/211904-cr-lf-android-app.html)

skoschke 19. Nov 2022 16:28


CR LF in Android App
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

ich habe ein komisches Phänomen:

Bisher war ich der Minung, dass CR LF = chr(13)+chr(10) bzw. #13#10 ist

Nun schaut Euch mal den Screenshot an, was der Delphi Debugger dazu meint!

Witzig dabei ist, dass der Code trotzdem bei
Delphi-Quellcode:
Pos(chr(13)+chr(10),inbuffer)
und bei

Delphi-Quellcode:
Pos(#13#10,inbuffer)
etwas findet!

Was ist da los?

Ciao
Stefan

himitsu 19. Nov 2022 17:04

AW: CR LF in Android App
 
Oktal :zwinker:
man beachte die führende 0.

https://docwiki.embarcadero.com/RADS...egerkonstanten



Ja, früher war normal ist der Debugviewer meistens Hexadezimal oder manchmal Dezimal ... so das ist schon ein bissl fehleranfällig gewöhnungsbedürftig.




PS, auch bei Hexadezimal mußt du aufpassen, denn #$AB ist nicht unbedingt #$00AB.
ANSI vs. Unicode.




[ADD]
Bei mir (aktuellstes 11.2) ist es dort immernoch Hexadezimal, also das kurze
Delphi-Quellcode:
#$D#$A
.
Im Bearbeiten/Doppelklick, Kontextmenü und [F6] zu "oktal" nichts zu finden.

himitsu 19. Nov 2022 17:24

AW: CR LF in Android App
 
Schade, Delphi kann inzwischen auch Binär, aber nicht für Chars. :cry:

%00001010 = 10 (8 Bit, 1 Byte)

Delphi-Quellcode:
Pos(sLineBreak, inbuffer) // #13#10 im Windows
Pos(#13#10, inbuffer) // dezimal
Pos(#015#012, inbuffer) // oktal
Pos(#$0D#$0A, inbuffer) // hexadezimal
Pos(#$D#$A, inbuffer) // hexadezimal (ja, hier ist die Null egal)
Pos(#%00001101#%00001010, inbuffer) // binär (aber nee)
Pos(^M^J, inbuffer) // uralte Escapesequenz
%x = binär
x = dezimal
$x = hexadezimal

#0x = ocatal ... aber nur bei Chars, also nach einem #
#x = dezimal
#$x = hexadezimal (ANSI, wenn maximal FF, ansonsten Unicode)
#$00xx = hexadezimal (explizit Unicode)
^x = escape sequence (@=0, A bzw. a = 1, B=2, 0=p ... siehe Charmap.exe und
Delphi-Quellcode:
xor $40
)


Delphi-Quellcode:
#$85   = #$2026 = #8230  // bei einer deutschen Codepage (deutsches Windows)
#$0085 = #$0085 = #133

TurboMagic 19. Nov 2022 19:14

AW: CR LF in Android App
 
Im 11.2 ist jetzt LLDB als Debugger am Werk, nicht mehr GDB wie in 10.4.
Da haben sich auch ein paar Dinge bezüglich Darstellung geändert. Teilweise sogar verbessert.

skoschke 20. Nov 2022 09:38

AW: CR LF in Android App
 
Zitat:

%x = binär
x = dezimal
$x = hexadezimal

#0x = ocatal ... aber nur bei Chars, also nach einem #
#x = dezimal
#$x = hexadezimal (ANSI, wenn maximal FF, ansonsten Unicode)
#$00xx = hexadezimal (explizit Unicode)
^x = escape sequence (@=0, A bzw. a = 1, B=2, 0=p ... siehe Charmap.exe und xor $40 )
Du lieber Himmel...!
Danke
Ciao
Stefan


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz