Projekt-Anfragen: Tel: 07022/9319004 info@CodeDocu.de Software Entwicklung in C# WPF Asp.Net Core Vba Excel Word SQL-Server EF Linq, UWP Net
#

Android Java:  Fehlermeldung beim Lesen eines HTML Dokuments
 
 
Ich lese mit Android Java eine Webseite als HTML ein und suche verschiedene Elemente. Doch beim Lesen kommt gleich eine Fehlermeldung sobald die Position builder.parse durchlaufen wird.

Document doc = builder.parse(inputSource);

 
Die Fehlermeldung lautet

attr value delimiter missing!
(position:START_TAG <meta http-equiv='null'>@4:18 in java.io.StringReader@fdcff3)

 
Bisher habe ich damit eine Web Response ausgewertet vom Router.

//</ check >
InputSource inputSource = new InputSource(new StringReader(sXML));
DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder =
null;
try {
builder = builderFactory.newDocumentBuilder();
Document doc = builder.parse(inputSource);

//--< Sid + ChallengeCode >--
Element rootElement = doc.getDocumentElement();
NodeList items = rootElement.getElementsByTagName(
"tname");
..


 
 
 
 
Lösung:
Mit der Klasse DocumentBuilderFactory kann man xml Dokumente einlesen und auswerten.
Allerdings führt das Arbeiten mit HTML in DocumentBuilderFactory zu Problemen.
Man muss auf einen reinen HTML Parser wechseln
 
Alternative:
HTML Parser: Jsoup
 
 
Hinweis, Grundlage:
Unter der Grundseite von DocumentBuilderFactory steht
 
javax.xml.parsers   Class DocumentBuilderFactory
java.lang.Object  
javax.xml.parsers.DocumentBuilderFactory
Defines a factory API that enables applications to obtain a parser that produces DOM object trees from XML documents.
 
 
 
 

 

attr value delimiter missing!
(position:START_TAG <meta http-equiv='null'>@4:18 in java.io.StringReader@fdcff3)

 
 
Aktuelle Methode zum Lesen des HTML Dokuments

private void fp_Contacts_Response(String sXML)
{
//----------------< fp_Contacts_Response() >----------------
//< check >
//</ check >
InputSource inputSource = new InputSource(new StringReader(sXML));
DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder =
null;
try {
builder = builderFactory.newDocumentBuilder();
Document doc = builder.parse(inputSource);

//--< Sid + ChallengeCode >--
Element rootElement = doc.getDocumentElement();
NodeList items = rootElement.getElementsByTagName(
"tname");

//< check >
if(items.getLength()<=0){return;}
//</ check >

String sContacts="";
for (int iItem=0;iItem<=items.getLength();iItem++)
{
Node node= (Node) items.item(iItem);
sContacts =sContacts +
"\n" + node.getTextContent();
}


txtResult_Contacts.setText(sContacts);


} catch (ParserConfigurationException e) {
e.printStackTrace();
}
catch (SAXException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
//----------------</ fp_Contacts_Response() >----------------
}
 

 
 
Mobile
»
Android Java: Fehlermeldung beim Lesen eines HTML Dokuments
»
Andoid Dev Tutorial: Erstellen einer Tabbed Activity
»
Android: Erstellen einer Tabbed Activity
»
Java: String Wert vergleichen mit == oder .equals
»
Android Dev: Berechtigungen zur App hinzufügen
»
Android IDE: Wo finde ich die Toolbox, UI Elemente, UI Controls in Android Studio?
»
Android: Start Handy in das Boot Start-Menü
»
Link Sammlung: Android File Explorer und Installation APK File in Android Studio Emulator
»
Java JDK installieren und JAVA_HOME anpassen 64 bit, Java SE Development Kit
»
Windows 10: Java Runtime Version prüfen

.

Jobs, Projekte, Angebote für Freiberufler, Selbstständig an Info@CodeDocu.de