Laden...

Wie bekommt man heraus, welches Zeichen es ist, wenn es nur als Rechteck dargestellt wird?

Erstellt von scrabbl vor 12 Jahren Letzter Beitrag vor 12 Jahren 1.286 Views
Thema geschlossen
S
scrabbl Themenstarter:in
211 Beiträge seit 2010
vor 12 Jahren
Wie bekommt man heraus, welches Zeichen es ist, wenn es nur als Rechteck dargestellt wird?

Hallo,

ich habe eine Textfile die voller Werte steht. Das Format der Textfile ist fest vorgegeben, da ich die von woanders bekomme.
Die Argumente sind getrennt mit einem Zeichen, das im Texteditor einfach als Rechteck dargestellt wird.

Wenn ichs einfach mal hier rüberkopiere sieht das so aus: 
Okay hier ist es mehr ein Quadrat, aber ich denke ihr wisst was ich meine (falls nicht kann ich auch einfach mal so eine Textfile anhängen)

Kann mir jemand sagen was das für ein Zeichen ist ? Und was es darstellt ? Ich würde in VisualStudio gerne anhand dieses Rechtecks splitten, dann hätte ich auf einen Schlag alle Argumente in einem string array. Einfach ins VS kopieren geht aber leider nicht 😜

Grüße

B
357 Beiträge seit 2010
vor 12 Jahren

?? Wandle es doch in einen Char um, anhand des Charcodes kannst du es dann finden. Einfach mal Textfile einlesen und durchdebuggen, dann ist das schnell passiert.

A
764 Beiträge seit 2007
vor 12 Jahren

Das Rechteck kann verschiedene Werte darstellen. In deinem Fall könnte es eine Art Zeilenumbruch sein, der nicht richtig dargestellt werden kann.
Du kannst herausfinden welches Zeichen das Rechteck darstellt, indem du das TextFile einliest und dir die Zeichen als int-Werte ausgibst. In einer ASCII-Tabelle kannst du dann auch nachschauen, was für ein Zeichen das eigendlich sein soll und kannst dann danach splitten.

Hinweis von herbivore vor 12 Jahren

ASCII-Tabelle

Da in C# alle Strings intern Unicode sind: Unicode-Tabelle

49.485 Beiträge seit 2005
vor 12 Jahren

Hallo scrabbl,

wie schon gesagt, kannst du das Zeichen einfach(*) einlesen, es in einen int umwandeln.

Dann hast du den Unicode des Zeichens und kannst das Zeichen als char-Literal '\unnnn' in den C#-Quellcode einfügen, wobei nnnn die vierstellige hexadezimale Darstellung des Unicodes ist. Siehe auch char (C#-Referenz).

herbivore

(*) Natürlich muss man beim Einlesen der Datei das richtige Encoding verwenden, damit alle Zeichen korrekt in die korrespondierenden Unicode-Zeichen umgesetzt werden. Strings in C# sind immer 16-Bit-Unicode. Für Dateien wird oft ein anderes Encoding verwendet, meistens Encoding.Default oder Encoding.UTF8. Wenn das Encoding der Datei unbekannt ist, hilft der Encoding Tester. Dank an Programmierhans für den Hinweis.

Thema geschlossen