| @ -0,0 +1,10 @@ | |||||
| <?xml version="1.0" encoding="UTF-8"?> | |||||
| <classpath> | |||||
| <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-17"> | |||||
| <attributes> | |||||
| <attribute name="module" value="true"/> | |||||
| </attributes> | |||||
| </classpathentry> | |||||
| <classpathentry kind="src" path="src"/> | |||||
| <classpathentry kind="output" path="bin"/> | |||||
| </classpath> | |||||
| @ -0,0 +1,17 @@ | |||||
| <?xml version="1.0" encoding="UTF-8"?> | |||||
| <projectDescription> | |||||
| <name>Actividad10</name> | |||||
| <comment></comment> | |||||
| <projects> | |||||
| </projects> | |||||
| <buildSpec> | |||||
| <buildCommand> | |||||
| <name>org.eclipse.jdt.core.javabuilder</name> | |||||
| <arguments> | |||||
| </arguments> | |||||
| </buildCommand> | |||||
| </buildSpec> | |||||
| <natures> | |||||
| <nature>org.eclipse.jdt.core.javanature</nature> | |||||
| </natures> | |||||
| </projectDescription> | |||||
| @ -0,0 +1,2 @@ | |||||
| eclipse.preferences.version=1 | |||||
| encoding/<project>=UTF-8 | |||||
| @ -0,0 +1,14 @@ | |||||
| eclipse.preferences.version=1 | |||||
| org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled | |||||
| org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 | |||||
| org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve | |||||
| org.eclipse.jdt.core.compiler.compliance=17 | |||||
| org.eclipse.jdt.core.compiler.debug.lineNumber=generate | |||||
| org.eclipse.jdt.core.compiler.debug.localVariable=generate | |||||
| org.eclipse.jdt.core.compiler.debug.sourceFile=generate | |||||
| org.eclipse.jdt.core.compiler.problem.assertIdentifier=error | |||||
| org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled | |||||
| org.eclipse.jdt.core.compiler.problem.enumIdentifier=error | |||||
| org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning | |||||
| org.eclipse.jdt.core.compiler.release=enabled | |||||
| org.eclipse.jdt.core.compiler.source=17 | |||||
| @ -0,0 +1,27 @@ | |||||
| ## Título | |||||
| Actividad 10 - Leer archivo .xml por pantalla | |||||
| ## Uso | |||||
| Creamos una clase que sea capaz de interpretar los datos de un archivo xml y mostrarlos por pantalla | |||||
| ``` | |||||
| idEmpleado: 1 | |||||
| Apellido: Lautaro | |||||
| Departamento: 12 | |||||
| Salario: 1500.99 | |||||
| idEmpleado: 2 | |||||
| Apellido: Rodriguez | |||||
| Departamento: 1 | |||||
| Salario: 2900 | |||||
| idEmpleado: 3 | |||||
| Apellido: Martinez | |||||
| Departamento: 33 | |||||
| Salario: 2400.50 | |||||
| idEmpleado: 4 | |||||
| Apellido: Conejero | |||||
| Departamento: 22 | |||||
| Salario: 6045 | |||||
| ``` | |||||
| @ -0,0 +1,22 @@ | |||||
| <empleados> | |||||
| <empleado id="1"> | |||||
| <apellido>Lautaro</apellido> | |||||
| <dep>12</dep> | |||||
| <salario>1500.99</salario> | |||||
| </empleado> | |||||
| <empleado id="2"> | |||||
| <apellido>Rodriguez</apellido> | |||||
| <dep>1</dep> | |||||
| <salario>2900</salario> | |||||
| </empleado> | |||||
| <empleado id="3"> | |||||
| <apellido>Martinez</apellido> | |||||
| <dep>33</dep> | |||||
| <salario>2400.50</salario> | |||||
| </empleado> | |||||
| <empleado id="4"> | |||||
| <apellido>Conejero</apellido> | |||||
| <dep>22</dep> | |||||
| <salario>6045</salario> | |||||
| </empleado> | |||||
| </empleados> | |||||
| @ -0,0 +1,46 @@ | |||||
| import org.w3c.dom.Document; | |||||
| import org.w3c.dom.Element; | |||||
| import org.w3c.dom.Node; | |||||
| import org.w3c.dom.NodeList; | |||||
| import javax.xml.parsers.DocumentBuilder; | |||||
| import javax.xml.parsers.DocumentBuilderFactory; | |||||
| import java.io.*; | |||||
| public class EmpleadoParser { | |||||
| private final InputStream empleadosFile; | |||||
| public EmpleadoParser(File location) throws IOException { | |||||
| empleadosFile = new FileInputStream(location); | |||||
| } | |||||
| public boolean parse() { | |||||
| boolean parsed = false; | |||||
| try { | |||||
| DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); | |||||
| DocumentBuilder builder = factory.newDocumentBuilder(); | |||||
| Document dom = builder.parse(empleadosFile); | |||||
| Element root = dom.getDocumentElement(); | |||||
| NodeList items = root.getElementsByTagName("empleado"); | |||||
| for(int i = 0; i < items.getLength(); i++) { | |||||
| Node node = items.item(i); | |||||
| if(node.getNodeType() != Node.ELEMENT_NODE) { | |||||
| throw new RuntimeException("Error in XML document, check xml syntax"); | |||||
| } | |||||
| Element element = (Element) node; | |||||
| System.out.printf("idEmpleado: %s \n",element.getAttribute("id")); | |||||
| System.out.printf("Apellido: %s\n",element.getElementsByTagName("apellido").item(0).getTextContent()); | |||||
| System.out.printf("Departamento: %s\n",element.getElementsByTagName("dep").item(0).getTextContent()); | |||||
| System.out.printf("Salario: %s\n\n",element.getElementsByTagName("salario").item(0).getTextContent()); | |||||
| } | |||||
| parsed = true; | |||||
| } catch (Exception e) { | |||||
| e.printStackTrace(); | |||||
| } | |||||
| return parsed; | |||||
| } | |||||
| } | |||||
| @ -0,0 +1,14 @@ | |||||
| import java.io.File; | |||||
| import java.io.IOException; | |||||
| public class Main { | |||||
| public static void main(String[] args) { | |||||
| try { | |||||
| EmpleadoParser empleadoParser = new EmpleadoParser(new File("empleados.xml")); | |||||
| empleadoParser.parse(); | |||||
| } catch (IOException e) { | |||||
| throw new RuntimeException(e); | |||||
| } | |||||
| } | |||||
| } | |||||