Avatar billede imnewb Nybegynder
29. august 2005 - 23:11 Der er 8 kommentarer

JAVA: Hvad er nemmeste?

Hvad er nemmeste at hente fra i Java til en applet som udskriver med g.drawString?

Er det XML eller MySQL?

Hvilket formål er bedst mht. et spil fx.?
Avatar billede arne_v Ekspert
29. august 2005 - 23:16 #1
hvis du kan forudsætte Java 1.4 så helt klart XML

hent XML med HTTP og pars med den indbyggede XML parser
Avatar billede bartz Praktikant
29. august 2005 - 23:19 #2
Avatar billede bartz Praktikant
29. august 2005 - 23:24 #3
Ups undskyldt, forkert spørgsmål :S. Hader når man logger ind og så den tager et andet spørgsmål.
Avatar billede imnewb Nybegynder
30. august 2005 - 00:24 #4
Findes der en dansk java artikel om XML? Skal helst være nemt at gå til -- og ikke alt for meget kode på én gang.
Avatar billede arne_v Ekspert
30. august 2005 - 08:24 #5
Avatar billede imnewb Nybegynder
30. august 2005 - 13:56 #6
Hej Arne. Har nu brugt dit eksempel:

import java.io.IOException;
import java.io.PrintStream;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.FactoryConfigurationError;
import javax.xml.parsers.ParserConfigurationException;

import org.w3c.dom.Document;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

public class nyheder {
public static void writeXML(PrintStream ps, String ind, Node parent) {
switch (parent.getNodeType()) {
case Node.ELEMENT_NODE :
ps.print(ind + "<" + parent.getNodeName());
NamedNodeMap atts = parent.getAttributes();
for (int i = 0; i < atts.getLength(); i++) {
ps.print(" " + atts.item(i).getNodeName() +
"=\"" + atts.item(i).getNodeValue() + "\"");
}
NodeList childs = parent.getChildNodes();
if (childs.getLength() == 0) {
ps.println("/>");
} else {
ps.println(">");
for (int i = 0; i < childs.getLength(); i++) {
writeXML(ps, ind + " ", (Node) childs.item(i));
}
ps.println(ind + "<" + parent.getNodeName() + "/>");
}
break;
case Node.TEXT_NODE :
if(!parent.getNodeValue().trim().equals("")) {
ps.println(ind + parent.getNodeValue().trim());
}
break;
default :
// nothing
}
return;
}
public static void main(String[] args) {
try {
// læs fra fil til DOM træ
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse("test.xml");
// udskriv DOM træ
writeXML(System.out, "", doc.getDocumentElement());
} catch (FactoryConfigurationError e) {
e.printStackTrace();
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return;
}
}


-- men hvordan får jeg den til at udskrive KUN <overskrift>..</overskrift>
og <tekst>..</tekst>

som fx.
overskrift
tekst

nyoverskrift
tekst
Avatar billede arne_v Ekspert
30. august 2005 - 15:14 #7
du skal teste på node name og kun udskrive hvis det er det rigtige

evt. kunne du bruge XPath løsningen
Avatar billede arne_v Ekspert
29. september 2005 - 20:41 #8
OK ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester