private void load_snap_from_xml(Element snap, StructureCollection structs, LinkedList tempList) throws VisualizerLoadException { Iterator iterator = snap.getChildren().iterator(); if (!iterator.hasNext()) throw new VisualizerLoadException("Ran out of elements"); structs.loadTitle((Element) (iterator.next()), tempList, this); structs.calcDimsAndStartPts(tempList, this); if (!iterator.hasNext()) return; Element child = (Element) iterator.next(); if (child.getName().compareTo("doc_url") == 0) { // load the doc_url add_a_documentation_URL(child.getText().trim()); if (!iterator.hasNext()) return; child = (Element) iterator.next(); } if (child.getName().compareTo("pseudocode_url") == 0) { // load the psuedocode_url add_a_pseudocode_URL(child.getText().trim()); if (!iterator.hasNext()) return; child = (Element) iterator.next(); } if (child.getName().compareTo("audio_text") == 0) { // load the psuedocode_url add_audio_text(child.getText().trim()); if (!iterator.hasNext()) return; child = (Element) iterator.next(); } // create & load the individual structures, hooking them into the StructureCollection. // linespernode : calculate it at end of loadStructure call while (child.getName().compareTo("question_ref") != 0) { StructureType child_struct = assignStructureType(child); child_struct.loadStructure(child, tempList, this); structs.addChild(child_struct); if (!iterator.hasNext()) return; child = (Element) iterator.next(); } if (child.getName().compareTo("question_ref") == 0) { // set up question ref add_a_question_xml(child.getAttributeValue("ref")); } else // should never happen throw new VisualizerLoadException( "Expected question_ref element, but found " + child.getName()); if (iterator.hasNext()) { child = (Element) iterator.next(); throw new VisualizerLoadException( "Found " + child.getName() + " when expecting end of snap."); } } // load_snap_from_xml
// Empieza La Carga de la Partida public static void leerArchivoXML(ListaPartida listaDePartidas) { try { SAXBuilder builder = new SAXBuilder(); /* Se crea un documento nuevo con el nombre del archivo */ Document doc = builder.build(nombreArchivoPartida); /* Se obtiene la raíz del archivo (la etiqueta inicial) */ Element raiz = doc.getRootElement(); /* Se puede obtener el atributo de la raíz (de la etiqueta) */ System.out.println(raiz.getAttributeValue("tipo")); /* Se obtienen todos los hijos cuya etiqueta esa "usuario" */ /* y se asignan esos hijos a un List */ List listaPartida = raiz.getChildren("partida"); System.out.println("Formada por:" + listaPartida.size() + " Partidas"); System.out.println("------------------"); /* Se genera un iterador para recorrer el List que se generó */ Iterator i = listaPartida.iterator(); /* Se recorre el List */ while (i.hasNext()) { /* Se obtiene cada uno y se asigna a un objeto de tipo Element */ Element e = (Element) i.next(); /* Se obtiene el nombre, apellido y cargo de cada una de las etiquetas */ /* hijas de usuario, es decir, nombre, apellido y cargo */ Element nick = e.getChild("Usuario"); Element ID = e.getChild("ID"); Element fechaactual = e.getChild("fechaacual"); Element fechainicio = e.getChild("fechainicio"); /* Se crea un nodo nuevo con la información y se agrega a la lista de usuarios */ Partida laPartida = new Partida( nick.getText(), ID.getContentSize(), fechaactual.getText(), fechainicio.getText()); listaDePartidas.AgregarElemento(laPartida); } } catch (Exception e) { e.printStackTrace(); } }
public String getNamespaceNodeText( Document document, String namespaceKey, String namespaceValue, String xPath) { HashMap<String, String> xmlMap = new HashMap<String, String>(); // xmlMap.put("tns","http://www.99bill.com/schema/fo/settlement"); xmlMap.put(namespaceKey, namespaceValue); // XPath xpath=document.createXPath("//tns:status"); //要获取哪个节点,改这里就可以了 XPath xpath = document.createXPath(xPath); // 要获取哪个节点,改这里就可以了 xpath.setNamespaceURIs(xmlMap); Element element = (Element) xpath.selectSingleNode(document); return element.getText(); }
/** * Método public static void leerArchivoXML(ListaUsuarios listaDeUsuarios): Este método permite * leer un archivo XML que contiene los datos de los usuarios a través de jdom */ public static void leerArchivoXML(ListaUsuario listaDeUsuarios) { try { SAXBuilder builder = new SAXBuilder(); /* Se crea un documento nuevo con el nombre del archivo */ Document doc = builder.build(nombreArchivo); /* Se obtiene la raíz del archivo (la etiqueta inicial) */ Element raiz = doc.getRootElement(); /* Se puede obtener el atributo de la raíz (de la etiqueta) */ System.out.println(raiz.getAttributeValue("tipo")); /* Se obtienen todos los hijos cuya etiqueta esa "usuario" */ /* y se asignan esos hijos a un List */ List listaUsuarios = raiz.getChildren("usuario"); System.out.println("Formada por:" + listaUsuarios.size() + " usuarios"); System.out.println("------------------"); /* Se genera un iterador para recorrer el List que se generó */ Iterator i = listaUsuarios.iterator(); /* Se recorre el List */ while (i.hasNext()) { /* Se obtiene cada uno y se asigna a un objeto de tipo Element */ Element e = (Element) i.next(); /* Se obtiene el nombre, apellido y cargo de cada una de las etiquetas */ /* hijas de usuario, es decir, nombre, apellido y cargo */ Element nick = e.getChild("nick"); Element clave = e.getChild("clave"); Element nombre = e.getChild("nombre"); Element apellido = e.getChild("apellido"); Element fechanac = e.getChild("fechanac"); Element avatar = e.getChild("avatar"); /* Se crea un nodo nuevo con la información y se agrega a la lista de usuarios */ Usuario elUsuario = new Usuario( nick.getText(), clave.getText(), nombre.getText(), apellido.getText(), fechanac.getText(), avatar.getText()); listaDeUsuarios.AgregarElemento(elUsuario); } } catch (Exception e) { e.printStackTrace(); } }
public static String getSimplePieChart(Map dataSource, String objectName, HttpSession session) throws Throwable { DefaultPieDataset dataset = new DefaultPieDataset(); Element chartObject = XMLHandler.getElementByAttribute(getChartObjectList(), "name", objectName); String title = chartObject.getAttributeValue("title"); int width = Integer.parseInt(chartObject.getAttributeValue("width")); int height = Integer.parseInt(chartObject.getAttributeValue("height")); Element LabelKeys = chartObject.getChild("Labels"); Element ValueKeys = chartObject.getChild("Values"); String valueKey = ValueKeys.getText(); String valueType = ValueKeys.getAttributeValue("type"); List labelKeys = LabelKeys.getChildren("Label"); String labelKey = LabelKeys.getText(); if (valueType.equalsIgnoreCase("number")) { for (int i = 0; i < dataSource.size(); i++) { Map rec = (Map) dataSource.get("ROW" + i); Number value = (Number) rec.get(valueKey); String label; if (labelKeys.isEmpty()) { label = DataFilter.show(rec, labelKey); } else { label = ((Element) labelKeys.get(i)).getText(); } dataset.setValue(label, value); } } else { for (int i = 0; i < dataSource.size(); i++) { Map rec = (Map) dataSource.get("ROW" + i); double value = (Double) rec.get(valueKey); String label; if (labelKeys.isEmpty()) { label = DataFilter.show(rec, labelKey); } else { label = ((Element) labelKeys.get(i)).getText(); } dataset.setValue(label, value); } } JFreeChart chart = ChartFactory.createPieChart3D( title, dataset, chartObject.getAttribute("showLegend").getBooleanValue(), chartObject.getAttribute("showToolTips").getBooleanValue(), chartObject.getAttribute("urls").getBooleanValue()); PiePlot3D pie3dplot = (PiePlot3D) chart.getPlot(); float alpha = 0.7F; if (chartObject.getAttribute("alpha") != null) { alpha = chartObject.getAttribute("alpha").getFloatValue(); } pie3dplot.setForegroundAlpha(alpha); return ServletUtilities.saveChartAsPNG(chart, width, height, null, session); }
public String getText(Document document, String xPath) { Element selectedNode = (Element) document.selectSingleNode(xPath); return selectedNode.getText(); }