Invalid Character Error - XML format in java



I have a .txt file:



Seven Pounds
Drama
13 martie 2009
8
tt0814314
/
Source Code
Mystery SF Thriller
1 aprilie 2011
8
tt0945513
/
V for Vendetta
Action Drama Thriller
16 martie 2006
8
tt0434409
/
Braveheart
Action Biography Drama
24 mai 1995
9
tt0112573
/
Se7en
Drama Mystery Thriller
22 septembrie 1995
9
tt0114369
/


And what I'm trying to do is the following: read all from file in a List<List<String>> L then write them into a XML format. The problem is that I get and INVALID_CHARACTER_ERR message, even though I had replaced space characters. The error message is this:



org.w3c.dom.DOMException: INVALID_CHARACTER_ERR: An invalid or illegal XML character is specified.
at com.sun.org.apache.xerces.internal.dom.CoreDocumentImpl.createElement(CoreDocumentImpl.java:622)
at pa.tema5ex1.Tree.CreeazaRaportXML(Tree.java:246)
at pa.tema5ex1.PATema5Ex1.main(PATema5Ex1.java:22)


and the code I've been doing by now is the following:



public void CreeazaRaportXML()
{
try
{
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.newDocument();


Element rootElement = doc.createElement("ColectieDeFilme");
doc.appendChild(rootElement);

for (int i = 0; i < colectieFilme.size(); i++)
{
for (int j = 0; j < colectieFilme.size(); j++)
{
String current = colectieFilme.get(i).get(j).replaceAll(" ", "").replace("\n", "");
System.out.println("current -> " + current);
Element dateFilmCurent = doc.createElement(current);
rootElement.appendChild(dateFilmCurent);
}

}

TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("C:\\Users\\miTzuliK\\Documents\\NetBeansProjects\\[PA]Tema5Ex1\\RaportXML.xml"));
transformer.transform(source, result);
// Output to console for testing
StreamResult consoleResult = new StreamResult(System.out);
transformer.transform(source, consoleResult);
}

catch (Exception e)
{
e.printStackTrace();
}
}

No comments:

Post a Comment