Allora, grazie per la precisazione sull'uso di InputStream o Reader, non la conoscevo.
Per quanto riguarda il codice, io uso un ByteArrayInputStream
La stringa contenuto8859 è frutto di una trasformazione xsl che trasforma il contenuto del file d'origine UTF-8 in ISO-8859-1.codice:BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(testoXml), "UTF-8")); int c; while ((c = reader.read()) != -1) sb.append((char) c); String contenuto8859 = trasformFileXml(sb.toString(), XSL_UTF82ISO88); ByteArrayInputStream is = new ByteArrayInputStream(contenuto8859.getBytes()); Document document = null; DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); try { DocumentBuilder db = dbf.newDocumentBuilder(); document = db.parse(is); }catch(ParserConfigurationException pce) { pce.printStackTrace(); }catch(SAXException se) { se.printStackTrace(); }catch(IOException ioe) { ioe.printStackTrace(); }
Per sviluppare uso Eclipse e ho settato il workspace per utilizzare l'ISO-8859-1, quindi non l'ho specificato nel .getBytes().

Rispondi quotando