Zur Demonstration von HTML5-Websockets habe ich mit webbit einen einfachen WebSocket-Server geschrieben, der Nachrichten entgegen nimmt und diese Nachrichten wieder an den jeweiligen angemeldeten Client zurück schickt. Ein solches Beispiel nennt man auch Echo-Server. …weiterlesen
Code
import java.io.StringReader; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.InputSource; public class NewMain { public static void main(String[] args) throws Exception { String text = "<person number=\"72\"><name>Benny</name></person>"; DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse(new InputSource(new StringReader(text))); NodeList elementsByTagName = document.getElementsByTagName("person"); for (int i = 0; i < elementsByTagName.getLength(); i++) { Node node = elementsByTagName.item(i); Element element = (Element) node; String attribute = element.getAttribute("number"); System.out.println(attribute); } } }
Output
72Here is a very good example on how to use the Iterator, for and foreach-loop in Java:
import java.io.IOException; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class JavaApplication { public static void main(String[] args) throws IOException { List<String> names = new ArrayList<>(); names.add("Benny"); names.add("Sarah"); names.add("Daniel"); names.add("Maria"); // Iterator Iterator<String> iterator = names.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); } // for for (int i = 0; i < names.size(); i++) { System.out.println(names.get(i)); } // foreach for (String name : names) { System.out.println(name); } } }
In my article “Create GraphML XML file with Java” I showed how to write a Graph to a GraphML-compatible XML file. Now I want to show you how you can write a GraphML-compatible file that can be used in the yEd Graph Editor to get visualized later. …weiterlesen
Parsing XML with Java is very simple. If you want to parse some HTML tags, then you just have to add a root element around those tags (to make it a valid XML structure) and then you can use the Java SAX XML parser.
Code
import java.io.StringReader; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.InputSource; public class NewMain { public static void main(String[] args) throws Exception { String html = "<h1>Headline</h1><p><b>Hello World.</b><b>This is a test.</b></p>"; html = "<root>" + html + "</root>"; DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse(new InputSource(new StringReader(html))); NodeList elementsByTagName = document.getElementsByTagName("b"); for (int i = 0; i < elementsByTagName.getLength(); i++) { Node element = elementsByTagName.item(i); String text = element.getTextContent(); System.out.println(text); } } }
Result
Hello World. This is a test.
With Blueprints it is very easy to create a XML file following the GraphML standard. All you need is this:
import com.tinkerpop.blueprints.pgm.Vertex; import com.tinkerpop.blueprints.pgm.impls.tg.TinkerGraph; import com.tinkerpop.blueprints.pgm.util.io.graphml.GraphMLWriter; import java.io.FileOutputStream; import java.io.OutputStream; public class App { private static final String OUTPUT_FILE = "./res/graph.graphml"; public static void main(String[] args) throws Exception { OutputStream out = new FileOutputStream(OUTPUT_FILE); TinkerGraph graph = new TinkerGraph(); Vertex source = graph.addVertex("1"); Vertex target = graph.addVertex("2"); graph.addEdge("3", source, target, "connection"); GraphMLWriter writer = new GraphMLWriter(graph); writer.outputGraph(out); } }
This is what you will get then:
graph.graphml
<?xml version="1.0" ?> <graphml xmlns="http://graphml.graphdrawing.org/xmlns"> <graph id="G" edgedefault="directed"> <node id="2"></node> <node id="1"></node> <edge id="3" source="1" target="2" label="connection"></edge> </graph> </graphml>

0