Substring einer HTML Seite will nicht

OnDemand

Top Contributor
Hallo zusammen, in unserem Lehrbuch erstellen wir grad ein Server-Client-Chat.

Dabei wird in der run() Methode das EditorPane ausgelesen und der Inhalt soll zwischen den Bodytags ausgelesen werden. (setContentType wurde auf das EditorPane angewandt)

So ist es im Lehrbuch:
Java:
while ((fromServer = serverIn.readLine()) != null) {
				if (fromServer.equals("exit")) {
					break;
				}

				fromEditor = editorPane.getText();
				beginIndex = fromEditor.indexOf("<body>")+6;
				endIndex = fromEditor.indexOf("</Body>");
				editorString = new StringBuffer(fromEditor.substring(
						beginIndex, endIndex));
				System.out.println(editorString);
				editorString.append("<br>" + fromServer);
				editorPane.setText(editorString.toString());

				// scrollt an untere Kante
				rect = new Rectangle(new Point(0, editorPane.getSize().height));
				editorPane.scrollRectToVisible(rect);
			}

Diese Fehlermeldung kommt!
Code:
Exception in thread "Thread-2" java.lang.StringIndexOutOfBoundsException: String index out of range: -40
	at java.lang.String.substring(Unknown Source)
	at lektion5.ClientInputThread.run(ClientInputThread.java:38)

Irgendwas stimmt da mit dem Substring nicht...hat jemand einen Tipp für mich?
 

hauptDev

Bekanntes Mitglied
Keine Ahnung gerade ob indexOf case-sensitive ist. ich nehme an nein und er findet dein </Body> nicht und gibt -1 zurück . Also eher </body> angeben?

Gesendet von meinem Cat Tablet PHOENIX 8.1J0 mit Tapatalk
 

stg

Top Contributor
Keine Ahnung gerade ob indexOf case-sensitive ist. ich nehme an nein und er findet dein </Body> nicht und gibt -1 zurück . Also eher </body> angeben?

Das erklärt aber nicht, wieso der Index
Code:
-40
ist. Daher vermute ich einfach mal, dass entweder der Fehler ganz wo anders liegt oder aber es vielleicht sogar zu so einem netten Effekt, wie etwa einem Überlauf der index-Variablen kommt..

Daher: Einfach mal mit dem Debugger Zeile für Zeile durch den Code gehen und die Belegung der relevanten Variablen prüfen.
 

hauptDev

Bekanntes Mitglied
Java:
public String substring(int beginIndex, int endIndex) {
    if(beginIndex < 0) {
        throw new StringIndexOutOfBoundsException(beginIndex);
    }
    if(endIndex > count) {
        throw new StringIndexOutOfBoundsException(endIndex);
    }
    if(beginIndex > endIndex) {
        throw new StringIndexOutOfBoundsException(endIndex - beginIndex);
    }
    return ((beginIndex == 0) && (endIndex == count)) ? this :
        new String(offset + beginIndex, endIndex - beginIndex, value);
}


@stg:
Methode oben ist aus der String-Klasse, also stimmte meine Lösung, auch wenn mir die -40 auch nicht ganz klar war. (Am Tablet gucken ist alles andere als spaßig) Aber nun sind wir alle ein Stück erfahrener :idea: :applaus:
 
Zuletzt bearbeitet:

stg

Top Contributor
Danke fürs Richtigstellen. Ich hab irgendwie eine
Code:
-1
erwartet, wie sie von
Code:
#indexOf()
zurückgegeben wird. Wieder was gelernt. :rtfm:
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
R In einer for Schleife bei einem Substring anfangen, wo man davor aufgehört hat Allgemeine Java-Themen 6
F Substring und LastIndexOf Allgemeine Java-Themen 4
B substring zählen Allgemeine Java-Themen 7
W String.substring und UTF-16-Konformität [solved] Allgemeine Java-Themen 5
X Substring aus Zahl Allgemeine Java-Themen 8
Z Frage zu String & Substring Allgemeine Java-Themen 9
V Substring mit regex fin_den? Allgemeine Java-Themen 5
M Hilfe beim substring, indexOf, etc. Allgemeine Java-Themen 8
TheJavaKid Substring problem Allgemeine Java-Themen 24
T substring() und Swing setText() Allgemeine Java-Themen 6
G subString() aber nicht auf Länge sondern auf Zeichen Allgemeine Java-Themen 3
S Suche passende substring - Methode! Allgemeine Java-Themen 9
G Fehler bei Substring Allgemeine Java-Themen 18
T substring Allgemeine Java-Themen 2
O Text aus einer Textdatei rausholen, der zwischen zwei Schlüsselworten steht Allgemeine Java-Themen 4
V Umgang mit fehlenden Daten in einer Java-Datenanalyseanwendung Allgemeine Java-Themen 5
M Methodenübersicht einer Klasse einsehen Allgemeine Java-Themen 14
T JNA, Aufruf der Funktionen einer dll Allgemeine Java-Themen 5
I Vom Monolith zu Services in einer Webseite Allgemeine Java-Themen 1
W Variable Initialisierung mit dem Ergebnis einer Regex Allgemeine Java-Themen 1
O Werte einer Generic LinkedList zusammenrechenen Allgemeine Java-Themen 14
C Sortieren und Selektieren einer ArrayList<Point3D> Allgemeine Java-Themen 6
A Einzelne Objekte und Unterobjekte einer ArrayList ausgeben Allgemeine Java-Themen 53
TheSepp Wie kann man Leerzeichen aus einer Array liste entfernen? Allgemeine Java-Themen 10
B Ein Objekt einer Klasse mehreren anderen Klassen zur Verfügung stellen? Allgemeine Java-Themen 6
M Optimierung einer Methode (byte-Geraffel) Allgemeine Java-Themen 2
I Wie kann ich den Wert aus einer If abfrage ausgeben Allgemeine Java-Themen 23
S HTML einer Webseite 1:1 so bekommen wie es auch der Browser anzeigt? Allgemeine Java-Themen 14
melaniemueller Einzelne Zeile aus einer txt Datei in einem String speichern Allgemeine Java-Themen 12
L Java überprüfen lassen, ob sich ein gegebener Pfad / das Programm an sich auf einer CD oder Festplatte befindet Allgemeine Java-Themen 14
J (Geplante) Änderungen an einer Datei vorübergehend speichern und anwenden? Allgemeine Java-Themen 12
ME2002 Fragen aus einer Java Klausur Allgemeine Java-Themen 67
_user_q Obfuscate einer .jar-Datei mit ProGuard? Allgemeine Java-Themen 2
_user_q Verknüpfung einer .jar-Datei (liegt z. B. auf dem Desktop) im Autostart-Ordner erstellen? Allgemeine Java-Themen 20
C Parsen einer sich updatenden Html mithilfe von jsoup Allgemeine Java-Themen 4
E Eine Methode einer extendeten Klasse deakitivieren Allgemeine Java-Themen 12
H Performance einer Monte-Carlo-Simulation verbessern Allgemeine Java-Themen 6
LimDul Kam eine java.net.URL zu einer HashMap und ging als DNS Anfrage wieder heraus Allgemeine Java-Themen 18
E Variablen Nach Übergabe einer Variable den Constructor aufrufen Allgemeine Java-Themen 16
Zeppi NullPointerException in einer if-Abfrage Allgemeine Java-Themen 6
D Abbruch einer ViewScoped Bean in Arbeit Allgemeine Java-Themen 2
Lukas2904 Schleife mit ansteuerung einer Klasse Allgemeine Java-Themen 5
d.lumpi Aus Einer Klasse auf ein Objekt einer anderen Klasse Zugreifen Allgemeine Java-Themen 1
Lukas2904 Wie kann man cps (ClicksPerSecond) in einer GUI anzeigen lassen? Allgemeine Java-Themen 4
O Produziert das Tool "jpackage" (ab JDK 14) .exe Dateien, die auf einer Zielumgebung ohne JRE lauffähig sind ?` Allgemeine Java-Themen 7
R Lambda Expression in einer Methode execute() aufrufen (execute() ist eine Methode aus dem funktionalen Interface Command) Allgemeine Java-Themen 5
Drachenbauer wie kann ich alle instanzen einer Klasse durchsehen, ohne, dass diese in einer Liste erzeugt wurden? Allgemeine Java-Themen 11
N BlueJ Implementation einer Analoguhr Allgemeine Java-Themen 0
O Formatierte String ausgabe bei vier Variablen in einer Zeile Allgemeine Java-Themen 1
N Speicherort einer Datei im Explorer ändern Allgemeine Java-Themen 8
O Datentypen Wie kann ich den Typ einer ArrayList abfragen ? Allgemeine Java-Themen 7
O Leerzeichen und Umlaute im Pfad einer Java Applikation machen Probleme Allgemeine Java-Themen 13
H Mehrere PNG-Files in einer Datei Allgemeine Java-Themen 9
G Java Editor Löschen doppelter Zahlen einer Liste Allgemeine Java-Themen 2
J JSON Daten von einer Webseite erhalten Allgemeine Java-Themen 2
L RegEx für Teile einer Berechnung Allgemeine Java-Themen 14
L Erste Schritte TDD testen einer Methode mit injezierten Services? Allgemeine Java-Themen 12
J Zerlegen einer Zahl Allgemeine Java-Themen 6
Zrebna Wie kann man endgültig aus einer Rekursion ausbrechen? Allgemeine Java-Themen 14
MiMa Person in einer Arraylist hinzugügen mit Prüfung ? Allgemeine Java-Themen 6
Meeresgott Effizientester Weg um nach der Value einer verschachtelten Map aufzulösen Allgemeine Java-Themen 5
H Mehrere Datentypen in einer Arraylist speichern Allgemeine Java-Themen 9
MiMa Prüfziffer einer EAN Nummer berechnen Allgemeine Java-Themen 4
MiMa Erstellungsdatum einer Datei Allgemeine Java-Themen 10
Drachenbauer Wie kann ich einer existierenden Enum von außerhalb veränderte Werte zuweisen? Allgemeine Java-Themen 5
S HTML den ich von einer URL hole nicht identisch mit dem HTML im Browser Allgemeine Java-Themen 1
S Rückgabe einer HttpURLConnection für eine Seite einlesen bei der man eingeloggt ist..? Allgemeine Java-Themen 5
O Java-Applikation tut in Netbeans, als JAR nicht, wegen Pfadangaben einer benötigten Datei Allgemeine Java-Themen 8
M Hilfe bei einer Java Programmieraufgabe! Ab morgen Montag um 08:00 Uhr Allgemeine Java-Themen 5
J Algorithmen Analyse einer Schleife Allgemeine Java-Themen 6
Drachenbauer Wie finde ich den Aufrufer zu einer Methode, die sich nicht in meinem Projekt befindet? Allgemeine Java-Themen 2
J Die Letzte Zahl aus einer Text datei lesen Allgemeine Java-Themen 8
P einen public <Optinal String> in einer anderen Klasse mit einem Int vergleichen Allgemeine Java-Themen 2
A Mithilfe von einer Nummer einen Namen finden n-Beziehung Allgemeine Java-Themen 8
Scream_ilias Auf einer Website die anmeldedaten eingeben Allgemeine Java-Themen 9
V Threads Probleme beim Aufrufen von Methoden einer anderen Klasse (Threads) Allgemeine Java-Themen 14
I Lohnt sich heutzutage der Aufwand einer Portierung für MacOS Allgemeine Java-Themen 8
J Suchen von einer Scannereingabe in einem HashSet Allgemeine Java-Themen 1
M Konstruktor einer Methode Allgemeine Java-Themen 35
L Echtzeitdaten aus einer Webseite ziehen mit Java Allgemeine Java-Themen 19
V EMail, Attachments auslesen von einer Email Allgemeine Java-Themen 0
T Google Links in einer Liste Allgemeine Java-Themen 4
T Sinn einer toString Methode Allgemeine Java-Themen 3
P Durchlaufen einer Queue Allgemeine Java-Themen 9
J Größe einer CD ermitteln Allgemeine Java-Themen 10
L Operatoren Java Reflections: Alle Methoden einer Klasse aufrufen ohne Exceptions Allgemeine Java-Themen 5
H Länge einer verketteten Liste Allgemeine Java-Themen 4
B Quellcode einer Java libary finden um zu copy & paste'n Allgemeine Java-Themen 5
N Daten einer JCoTable in JTextArea anzeigen Allgemeine Java-Themen 7
sascha-sphw Java 9 module Zugriff auf eine resource einer anderen JAR Allgemeine Java-Themen 0
N Generic Type einer Generischen Klasse während der Laufzeit bekommen Allgemeine Java-Themen 2
E Erstellen einer Liste mit einer maximalen Menge an Elementen Allgemeine Java-Themen 13
M Wie kann ich ein int[] Array in einer Methode benutzen? Allgemeine Java-Themen 6
T Compiler-Fehler NoClassDefFoundError beim Laden einer Class Allgemeine Java-Themen 11
H Klassen LibGDX - Verschiedene Klassen als Value in einer Map Allgemeine Java-Themen 8
P Element einer Liste wurde hinzugefügt, aber es gibt keinen Zugriff Allgemeine Java-Themen 2
E Elemente innerhalb einer ArrayList vergleichen Allgemeine Java-Themen 33
J Einen Thread in einer Schleife Allgemeine Java-Themen 2
temi Java Programm aus einer DB laden und starten Allgemeine Java-Themen 2
J int Werte in einer anderen Klasse in Arrays speichern Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben