Как использовать StaX

Привет, ребята, так что я новичок в мире синтаксического анализа Java-XML и обнаружил, что StaX API - это, вероятно, моя лучшая ставка, так как мне нужно и читать, и писать файлы XML. Итак, у меня есть очень короткая (и должна быть очень простая) программа, которая (должна) создать XMLInputFactory и использовать ее для создания XMLStreamReader. XMLStreamReader создается с использованием FileInputStream, прикрепленного к XML-файлу в том же каталоге, что и исходный файл. Однако даже если FileInputStream скомпилирован правильно, XMLInputFactory не может получить к нему доступ, а без FileInputStream он не может создать XMLStreamReader. Пожалуйста, помогите, поскольку я понятия не имею, что и разочарован до такой степени, чтобы сдаться!

import javax.xml.stream.*;
import java.io.*;
public class xml {
    static String status;
    public static void main(String[] args) {
        status = "Program has started";
        printStatus();      
        XMLInputFactory inFactory = XMLInputFactory.newInstance();
            status = "XMLInputFactory (inFactory) defined"; printStatus();
        try { FileInputStream fIS = new FileInputStream("stax.xml"); }
            catch (FileNotFoundException na) { System.out.println("FileNotFound"); }
            status = "InputStream (fIS) declared"; printStatus();
        try { XMLStreamReader xmlReader = inFactory.createXMLStreamReader(fIS); } catch (XMLStreamException xmle) { System.out.println(xmle); }
            status = "XMLStreamReader (xmlReader) created by 'inFactory'"; printStatus();
    }
    public static void printStatus(){ //this is a little code that send notifications when something has been done
        System.out.println("Status: " + status);
    }
}

также вот файл XML, если вам это нужно:

<?xml version="1.0"?>
    <dennis>
        <hair>brown</hair>
        <pants>blue</pants>
        <gender>male</gender>
    </dennis>

Ответы на вопрос(1)

Ваш ответ на вопрос