Hexadezimal-Unicode-Zeichen in seine visuelle Darstellung konvertieren

8

Ich versuche, ein C # -Programm zu machen, das Unicode-Zeichen von seinem hexadezimalen Format in ein einzelnes Zeichen übersetzt, und ich habe ein Problem. Das ist mein Code:

Das funktioniert:

%Vor%

Dies funktioniert jedoch nicht:

%Vor%

Weil (Convert.ToChar("\u0066")) den Fehler gibt:

  

String muss genau ein Zeichen lang sein

Hat jemand eine Idee, wie man das macht?

    
vldmrrdjcc 03.07.2011, 17:14
quelle

2 Antworten

6

int.Parse mag das Präfix "\ u" nicht, aber wenn Sie zuerst bestätigen, dass es da ist, können Sie

verwenden %Vor%

Dadurch werden die ersten zwei Zeichen aus der Eingabezeichenfolge entfernt und der verbleibende Text wird analysiert.

Um sicherzustellen, dass die Sequenz gültig ist, versuchen Sie Folgendes:

%Vor%     
Steve Morgan 03.07.2011, 17:34
quelle
-1
%Vor%

Dies ist eine Ein-Zeichen-Zeichenfolge zur Laufzeit, weil der Compiler die Backslash-Sequenz verarbeitet hat.

Der Rest Ihres Codes behandelt sechs Zeichenketten { '\', 'u', '0', '0', '6', '6' } , die Convert.ToChar nicht verarbeiten kann.

Probieren Sie char.Parse (oder möglicherweise Int16.Parse(s, NumberStyles.AllowHexSpecifier) gefolgt von a In char ) umgewandelt.

    
Ben Voigt 03.07.2011 17:20
quelle

Tags und Links