Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
ich hab ein String mit komischen Zeichen drin und möchte diesen in "normale" Zeichen umwandeln - also 0-9 und a-z, A-Z, sowie alle Umlaute und Sonderzeichen.
Ist es die Funktion "In String formatieren" ? Aber wie kann ich die Formatierung angeben? In meinem String sind komische Zeichen wie oder þ ach ja und Zeichen die man nicht sieht - aber auch keine Leerzeichen sind. Ich nehme an, dass es Unicode ist. Ich will die einfach nur weg haben
Hallo,
ich weiß nicht, ob du das meinst, aber vielleicht hilft es dir ja:
Du kannst bei Text-Indikatoren,-Konstanten, bzw. -Controlls. mit Rechtsklick die Displayart ändern (Normal, Code, Passwort, Hex). Nimm dir mal den Indikator, stell "Normal Display" ein, füge deinen String ein und änder anschließend in "Code Display". Dann sollte dein String nur "Normale" Zeichen enthalten. Oder was willst du mit deinem String machen?
Ich will wirklich noch was mit dem String machen - ich will den Unicode nicht mal auslesen, sondern wirklich einfach entfernen. Es musste doch ne Funktion geben, in der man einen String einliest und dieser nur darstellbare Zeichen ausgibt und den rest einfach löscht, oder? Der String ist auch nicht so lang max. 255 Zeichen. Ich überleg auch grad, ob ich dann ne riesen-schleife bauen soll und jedes Zeichen im String abfragen soll ob es ein Zeichen 0-9, leerzeichen, bindestrich (also sonderzeichen) oder a-z bzw A-Z ist und sonst dieses Zeichen löschen lasse. Das ist aber mit Aufwand verbunden und höchstwarscheinlich unglaublich langsam.
@ GerdW - Funktioniert leider nicht ganz wie ich will bzw. nur teilweise es werden teile davon trotzdem als druckbares Zeichen erkannt
@ illuminus - Nein, diese Funktion "Trim Whitespace" hab ich bereits drin - löscht nur die Leerzeichen - funktioniert nicht, trotzdem danke Allerdings kann ich mit deinem Anhang nicht viel anfangen, kannste die vi hochladen?
Kann es sein, dass es irgendwas mit der HEX-Darstellung zu tun hat? Wenn ich den String als Hex auslesen bekomm ich Zahlen.
1) Woher hast du deinen String? Vielleicht wäre es günstig, den String in der HEX-Darstellung einmal hier hochzuladen.
2) Bist du sicher, dass es Unicode ist? Unicode bedeutet 16bit anstatt 8bit pro Zeichen, da kommst du mit Löschen von Zeichen IMHO auf keinen grünen Zweig.
3) Falls es doch ASCII-Code ist, auch da gibt es "unlesbare" Zeichen.
4) Logisch ist in HEX-Darstellung alles lesbar. Schließlich wird dir in dieser Darstellung für jedes Zeichen bzw. Byte der entsprechende Zahlencode (0-255) in Hexadezimaldarstellung (0x00 bis 0xFF) angezeigt.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
@ jg erstmal zum Hintergrund der ganzen Aktion hier: ich möchte für mich ja ein kleines Programm schreiben um MP3s zu ordnen und lese dafür den ID3 Tag aus
1) ich bezieh meinen String durch die Suche nach einem bestimmten Ausdruck in einer MP3 --> die Info entstammt von id3.org mit dem Hinweis:
If the textstring is followed by a termination ($00 (00)) all the following information should be ignored and not be displayed. All text frame identifiers begin with "T". Only text frame identifiers begin with "T", with the exception of the "TXXX" frame. All the text information frames have the following format:
<Header for 'Text information frame', ID: "T000" - "TZZZ", excluding "TXXX" described in 4.2.2.>
Text encoding $xx
Information <text string according to encoding>
Also suche ich nach "TPE1" für den Interpreten und das was danach kommt - aber nur mit ner definierten Länge: und das ist m.E. irgendwie mit Unicode Hex oder so geschrieben - und diese Länge gilt es rauszufinden. Ich hab das schon gemacht, aber die vi die ich hier hochgeladen hatte scheint wohl nicht die Lösung zu sein (jedenfalls gabs Fehler)
2. keine Ahnung, soweit ich weiß schon.
3. Ich versuch mich grad drin den String einzeln durchzugehen und wenn das zeichen nicht lesbar ist dieses aus den String zu entfernen
12.09.2011, 22:48 (Dieser Beitrag wurde zuletzt bearbeitet: 12.09.2011 22:49 von rekorn.)