warum bekomme ich ein string index out of bounds exception

coolian

Bekanntes Mitglied
ich hab ein programm das eine email senden soll. das email senden funktonirt aber jetzt hab ich eine button gemacht der machen soll das man ein text senden kann aber man auch noch wenn man auf mail senden drückt dann soll es so sein das man da dann nochmal für ein text der in die position wo man vorher beim text setzen // hin gemacht hat also hab ich jetzt das so gemacht
Java:
else if(e.getSource() == this.setze_text){
            String tt = "";
            String text = JOptionPane.showInputDialog(null, "geben sie den text der gesendet werden soll ein wenn sie eine dynamische abfrage an einer stelle brauchen verwenden sie / hier das was bei der abfrage vor stehen soll /", "text", JOptionPane.PLAIN_MESSAGE);
            for (int i = 0; i < text.length(); i++){
                String t = text.substring(i);
                if (t.startsWith("/")){
                    tt = t.substring(1);
                    int d = tt.length();
                    d -= 1;
                    t = (String) tt.subSequence(0, d);
                    System.out.println(t);
                   
                }
            }
        }

aber der code giebt eine stringindexoutofboundsexception exception allerdings giebt der auch den richtigen string den ich brauche zurück aber die exception hätte ich halt gerne weg aber ich weis nicht wo da ein string index out of bounds ist
 
Moin
ich hab ein programm das eine email senden soll. das email senden funktonirt aber jetzt hab ich eine button gemacht der machen soll das man ein text senden kann aber man auch noch wenn man auf mail senden drückt dann soll es so sein das man da dann nochmal für ein text der in die position wo man vorher beim text setzen // hin gemacht hat also hab ich jetzt das so gemacht
Kannst Du das bitte mal leserlich schreiben (Stichworte: Groß- und Kleinschreibung, Interpunktion) ??

hatte übrigens keine ahnung was ich als präfix hätte nehmen können
Was für ein Präfix???

Wo genau tritt die Exception auf?
Bitte immer den gesamten StackTrace mitposten!

VG Klaus
 
Wie sieht denn dein Input aus? Meines Erachtens nach kann dort nur eine StringIndexOutOfBoundsException kommen, wenn dein String mit einem / endet. BTW: Der zweite Parameter bei subsequence() ist exclusive, d.h. wenn du d übergibst, dann nimmt er intern d-1.
 
der input der in den input pane getan wird ist egal solange er / hat in d ist die länge von tt in tt ist bei wenn z.b der input hallo /nix zu sehen/ dann ist tt nix zu sehen/ und halt die länge davon ich will halt in t den inhalt von tt nur ohne / haben der fehler kann hier eingesehen werden https://pastebin.com/dvfqvZK0
 
Zuletzt bearbeitet:
In der Hoffnung, Google würde die Sprache erkennen, hatte ich deren Translator bemüht; und was soll man sagen? Es hat scheinbar funktioniert. Mein Augenmerk viel dabei sofort auf die rot umrandete Stelle:

madeIt.gif

Gut, dachte ich mir, "he made it" - sein Post, ein Akt der Reaktion auf das euphorische Gefühl, es geschafft zu haben. Doch ein beklemmendes Gefühl des Zweifels kam auf. Hat Google den Job wirklich gut gemacht? Fehlinterpretation? Verstärkt wurde dies, als sich @httpdigest der befremdlichen Sprache kundig zeigte. Vollkommene Verwirrung. Rückfrage. @Robat 42, what else? Wohin soll uns die Digitalisierung noch führen, wenn in der Grundschule die Java-Programmierung jetzt schon vor dem Lernen von Lesen und Schreiben eingeführt wird?
 
Alles Gute - und denke immer daran: wenn Du die Frage nicht versteht, könnte Google Translator dahinterstecken 🙁
 
es geht darum das ich eine stringindexoutofbounds exception bekomme an dieser stelle
Java:
t = (String) tt.subSequence(0, d);
 
這是關於在此時獲取stringindexoutofbounds異常
代碼(Java):
t =(String)tt.subSequence(0,d); [代碼] hier in chinesisch wenn es sein muss jedenfalls alles was google übersetzt hat
 

Zurück
Oben