Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Delphi String an Position vergleichen (binary Darstellung) (https://www.delphipraxis.net/192297-string-position-vergleichen-binary-darstellung.html)

A.Griffin 6. Apr 2017 13:55

String an Position vergleichen (binary Darstellung)
 
Ich habe folgende Situation:

Ich habe Strings in der Form: '11001101' also wie binäre Zahlen. Gibt es eine Methode die mir sagen würde ob jetzt an einer Position einer '1' vorkommt? Z.b methode(EingabeString, CompareString: string, position: integer): boolean. In meinem Fall also Methode('11001101', '1', 1) usw.
Ich frage das ganze weil ich Eingänge von einem Gerät ablese. Die bekomme ich in der Form eines Bytes (z.B 192 -> '11000000'), welches ich gerade in die oben genannte binäre Darstellung bringe. Ich möchte die Eingänge graphisch darstellen (z.B mit roten und grünen Punkten) und dachte mir es wäre am einfachsten mit der gesuchten Methode und dann die graphische Darstellung je nach True oder False der Methode ändern. Ich könnte es aber auch ganz anders machen, wenn jemand was besseres vorschlägt.


Ich nutzt gerade hierfür Delphi 10.2

Jumpy 6. Apr 2017 14:02

AW: String an Position vergleichen (binary Darstellung)
 
Kannst du doch einfach selber machen mit:

Result:=Copy(EingabeString,Position,1)='1' // oder ='0'

haentschman 6. Apr 2017 14:07

AW: String an Position vergleichen (binary Darstellung)
 
Moin...:P
http://www.delphipraxis.net/95180-ef...bitmasken.html
...das sollte helfen ohne über die Strings gehen zu müssen... :zwinker:

A.Griffin 6. Apr 2017 14:33

AW: String an Position vergleichen (binary Darstellung)
 
Vielen Dank @haentschman. Das hat mir schon sehr geholfen. Ich muss also nichts umwandeln und kann die Zahlen direkt auswerten.

himitsu 6. Apr 2017 17:22

AW: String an Position vergleichen (binary Darstellung)
 
Zitat:

Zitat von Jumpy (Beitrag 1366653)
Kannst du doch einfach selber machen mit:

Result:=Copy(EingabeString,Position,1)='1' // oder ='0'

Delphi-Quellcode:
Result:=EingabeString[Position]='1' // oder ='0'


Aber natürlich immer besser gleich binär zu arbeiten und keine Strings zu verwenden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:29 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