ERLEDIGT
NEIN
NEIN
ANTWORTEN
6
6
ZUGRIFFE
165
165
EMPFEHLEN
-
Hallo zusammen,
ich habe ein Problem, dass Zeichen größer als 127 sich nicht in Char´s konvertieren lassen?!
Sitz da schon Stunden dran und hab schon ein paar Sachen ausprobiert...
Um es ganz einfach zu halten, folgender Code funktioniert schon nicht und ich frag mich warum?!
Code :1
System::String ^tmpStr = Convert::ToChar(130).ToString
Bin für jede Art von Hilfe dankbar.
Viele Grüße
RuFFGeändert von RuFFnEcK (19.07.11 um 16:47 Uhr) Grund: Sterne ***
-
19.07.11 16:49 #2
- Registriert seit
- Apr 2009
- Ort
- Düsseldorf (NRW)
- Beiträge
- 508
Lies mal hier: Character (Datentyp).
Ich bin jetzt nicht so .NET bewandert, aber Convert müsste auch eine Methode ToUnsignedChar anbieten. Versuch's mal damit.
-
Hallöchen,
also ich programmier schon Weile und Ansich ist das kein Problem, aber ich hab keine Ahnung was .NET da für einen Murks macht...
Es sollte doch wohl mit .NET möglich sein eine Zahl > 127 in das entsprechende ASCII Zeichen zu konvertieren!
Es gibt keine ToUnsignedChar() Methode, zumal ToChar() bis 127 auch einwandfrei funktioniert...!
Ich will jetzt auch nicht anfangen zu basteln, kann mir denn keiner Helfen****?
Viele Grüße
RuFF
-
20.07.11 09:52 #4
- Registriert seit
- Apr 2009
- Ort
- Düsseldorf (NRW)
- Beiträge
- 508
Moin,
Ok, bei meiner Vermutung hab ich ziemlich ins leere geraten.. und unsignedChar macht egtl. auch wenig Sinn. Ich schieb's mal auf die Uhrzeit
So, jetzt hab ich aber nochmal nachgeguckt. Char ist in .NET ein UTF8-Zeichen. Wenn man sich jetzt mal die UTF-8 Tabelle anschaut, sieht man, dass 130 (0x82) ein Controlzeichen ist, also kein sichtbares Zeichen!
Folgendes Programm funktioniert daher bei mir ohne Murren:
Code cpp:1 2 3 4 5 6 7 8
using namespace System; int main(array<System::String ^> ^args) { String ^tmpStr = Convert::ToString(160).ToString(); // Leerzeichen Console::WriteLine(L"\"" + tmpStr + L"\""); Console::ReadLine(); return 0; }
Erwartete und tatsächliche Ausgabe ist:
Code :1
" "
Best regards
Edit: Übrigens: ASCII hat nur 128 Zeichen, von 0 bis 127.
Siehe auch ASCII-Tabelle
Geändert von Tim Bureck (20.07.11 um 09:57 Uhr) Grund: Hexadezimaldarstellung hinzugefügt
-
Moin,
erstmal danke für die Mühen!
Es geht um einen CRC-Code der an jede Zeile angehangen wird...Somit muss ich die nicht sichtbaren Zeichen irgendwie in meinen String bekommen und an das Gerät schicken...
Wie stell ich das dann an? Wie bekomme ich Controlzeichen in einen String sollte die Frage lauten
Vielleicht steh ich grad nur auf dem Schlauch, aber weiß echt nicht weiter
Viele Grüße
RuFF
-
20.07.11 10:24 #6
- Registriert seit
- Apr 2009
- Ort
- Düsseldorf (NRW)
- Beiträge
- 508
Moin,
das passiert ja, indem du diesen anhängst. Du siehst es ja nur nicht.
Hier ein kleiner Test:
Code cpp:1 2 3 4 5 6
int main(array<System::String ^> ^args) { String ^tmpStr = Convert::ToChar(130).ToString(); Console::WriteLine(L"\"" + Convert::ToInt32(Char::ConvertToUtf32(tmpStr, 0)) + L"\""); Console::ReadLine(); return 0; }
Hier wird "130" ausgegeben. Der Character wurde also erst in den String geschrieben, dann konnte man ihn auch wieder auslesen.
Best regards
-
Hi,
hab tausend Dank es ****t jetzt alles wie gewollt und ja ASCII geht nur von 0 bis +127.
Ähm was soll man sagen, hatte ein Stück Code übernommen und nicht weiter geprüft...
Hab mir den Code auf Reglerseite angeschaut und siehe da ein "bcc % 256" und anschließendes Konvertieren löst alle Probleme
Bzw. nehme ich jetzt gleich nen "unsigned char" zum aufsummieren 
Viele Grüße
RuFF
Ähnliche Themen
-
char wert anderem char zuweisen (char* )
Von Dragon_Arch im Forum C/C++Antworten: 14Letzter Beitrag: 26.05.08, 20:52 -
ein konvertierungsproblem
Von rpkoch im Forum Cinema 4DAntworten: 0Letzter Beitrag: 13.02.08, 10:04 -
[c++] char*<-system::string* konvertierungsproblem
Von pflegefall im Forum VisualStudio & MFCAntworten: 4Letzter Beitrag: 29.03.06, 15:27 -
Konvertierungsproblem von Quark 6.5 zu 5 zu 4
Von Sparrow84 im Forum Desktop Publishing (DTP)Antworten: 0Letzter Beitrag: 26.01.06, 09:44 -
PDF Konvertierungsproblem
Von nbgMAsTer im Forum Vektor-ProgrammeAntworten: 2Letzter Beitrag: 13.04.05, 21:00





Zitieren
Login





