Kaeyu Geschrieben 23. August 2006 Geschrieben 23. August 2006 hiho, ich brauche, mal wieder ^^'', dringend hilfe! und zwar, will ich ein programm schreiben, das daten ver- und entschlüsselt. doch das ersetzen der string einzelteile ist schwerer als ich dachte! ja is klar text_field.setText(StringXYZ.replace("1","2")); geht zwar, aber nur ein einziges mal! wenn ich den rest dranhänge also StringXYZ.replace("x","y")+StringXYZ.replace("v","w")....usw. wird auch immer nur ein einziges ersetzt. würde z.b. bei dieser Text Eingabe hier: "MrXYZ" mit replaces von: text_field.setText(String.replace("X","1")+String.replace("Y","2")+String.replace("Z","3")); dies ergeben(als ausgabe über JTextArea):"Mr1YZ MrX2Z MrXY3" es soll aber: "Mr123" rauskommen! hoffe einer versteht wie ich es meine :S mfg Kaeyu
Pinhead Geschrieben 23. August 2006 Geschrieben 23. August 2006 hoffe einer versteht wie ich es meine :S Ich glaube ich habe dich verstanden Schau dir mal die Methode replaceAll an ich denke das wird dir helfen [EDIT] Und das Problem das der Text immer komplett angehängt wird liegt an dem + String original = "MrXYZ"; String verschlüsselt = ""; verschlüsselt = original.replaceAll("X",1); verschlüsselt = verschlüsselt.replaceAll("Y",2); verschlüsselt = verschlüsselt.replaceAll("Z",3); text_field.setText(verschlüsselt); Allerdings ungetestet
Kaeyu Geschrieben 23. August 2006 Autor Geschrieben 23. August 2006 hab den fehler gefunden^^ eines der zeichen hat den fehler verursacht lol. ich weiß zwar nicht warum aber naja. auf jeden fall warn das die zeichen: $ % & / ( ) ich hab buchstaben eingesetzt und jetzt gehts danke vielmals Pinhead P.S.: geht auch als megalanger einzeiler xD xyz = JTextArea.getText().replaceAll(....).replaceAll(...) usw
mb2s Geschrieben 29. August 2006 Geschrieben 29. August 2006 Hallo, was du machst ist folgendes: Du nimmst dreimal den String und ersetzt in jedem String einen Buchstaben... Mach es so: Code: String test = "MisterXYZ"; test=test.replace('X','1'); test=test.replace('Y','2'); test=test.replace('Z','3'); System.out.println(test);
Jaraz Geschrieben 29. August 2006 Geschrieben 29. August 2006 und zwar, will ich ein programm schreiben, das daten ver- und entschlüsselt. Zur Übung oder produktiv? Produktiv nutze vorhandene Bibliotheken. Stichwort: java.security Hallo, was du machst ist folgendes: Du nimmst dreimal den String und ersetzt in jedem String einen Buchstaben... Mach es so: Code: String test = "MisterXYZ"; test=test.replace('X','1'); test=test.replace('Y','2'); test=test.replace('Z','3'); System.out.println(test); Auch unperformant! Für verschlüsselung eher das byte[] array des Strings nutzen und mit schleifen durchlaufen. replace macht zwar dasselbe, aber der Overhead daraus jeweils wieder einen String zu bilden tritt bei deiner Lösung mehrfach auf. Gruß Jaraz
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden