J'ai un document XML qui a été sérialisé dans un flux d'octets et conservé dans une base de données. Je récupère le flux d'octets, mais comment puis-je le convertir dans un fichier XML?Conversion de ByteArrayInputStream en fichier xml
1
A
Répondre
0
Cela dépend vraiment de la façon dont le XML est sérialisé à un flux d'octets, etc., mais vous voulez probablement jeter un oeil à la classe the SAXParser, en particulier les [méthodes parse()] [2].
[2]: http://java.sun.com/javase/6/docs/api/javax/xml/parsers/SAXParser.html#parse(java.io.InputStream, org.xml.sax.helpers.DefaultHandler)
0
Voici quelques méthodes pour convertir dans les deux sens de byte [] et le dos. Bien sûr, l'objet peut être une chaîne
public static Object byteArrayToObject(byte[] data)
{
Object retObject = null;
if (data != null)
{
ByteArrayInputStream bis = null;
ObjectInputStream ois = null;
try
{
bis = new ByteArrayInputStream(data);
ois = new ObjectInputStream(bis);
retObject = ois.readObject();
}
catch(StreamCorruptedException e)
{
e.printStackTrace(System.out);
}
catch(OptionalDataException e)
{
e.printStackTrace(System.out);
}
catch(IOException e)
{
e.printStackTrace(System.out);
}
catch(ClassNotFoundException e)
{
e.printStackTrace(System.out);
}
finally
{
try
{
bis.close();
}
catch(IOException ex)
{
ex.printStackTrace(System.out);
}
try
{
ois.close();
}
catch(IOException ex)
{
ex.printStackTrace(System.out);
}
}
}
return retObject;
}
public static byte[] objectToByteArray(Object anObject)
{
byte[] results = null;
if (anObject != null)
{
// create a byte stream to hold the encoded object
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
try
{
// create a stream to write the object
ObjectOutputStream ostrm = new ObjectOutputStream(bytes);
// write the object
ostrm.writeObject(anObject);
// ensure that the entire object is written
ostrm.flush();
results = bytes.toByteArray();
try
{
ostrm.close();
}
catch (IOException e)
{
}
try
{
bytes.close();
}
catch (IOException e)
{
}
}
catch (IOException e)
{
e.printStackTrace(System.out);
}
}
return results;
}
post-scriptum Ce vieux code que j'ai creusé dans le grenier - A besoin d'être modernisé
Questions connexes
- 1. Convertir InputStream (Image) en ByteArrayInputStream
- 2. Conversion d'un fichier SGM en XML existant
- 3. Conversion de XML en DataTable
- 4. Problème de conversion de fichier XML
- 5. Conversion d'un fichier brut (données binaires) en fichier XML
- 6. Conversion Word XML en RTF
- 7. Conversion de Byte Array en fichier Wav
- 8. Conversion d'objets en représentations XML en C#
- 9. Automatiser la conversion du fichier Excel xls en Excel xml
- 10. Conversion Linq en XML -Dictionnaire
- 11. Conversion de valeurs de chaîne en xml
- 12. Conversion de fichier PST en fichier CSV
- 13. Conversion de XML en objet C++
- 14. Conversion de datarow [] en xml. C'est possible?
- 15. Conversion de la configuration XML en annotations
- 16. Problème de conversion objet XML en C#
- 17. Conversion de datetime XML en datetime SQL
- 18. MooTools. Conversion de XML (éléments) en chaîne
- 19. Conversion XML C#
- 20. texte étrange lors de la conversion tableau XML en XML
- 21. Conversion d'un fichier WSDL en fichier XSD en Java
- 22. Conversion des éléments XML aux attributs XML en utilisant XSLT
- 23. Conversion d'un document XML en dictionnaire
- 24. Aide! java.lang.ArrayIndexOutOfBoundsException inattendue lors de l'utilisation de ByteArrayInputStream
- 25. Conversion d'un fichier .php en fichier .html?
- 26. Conversion d'un fichier .so en fichier .jnilib
- 27. Conversion d'IOstream binaire en fichier
- 28. Conversion d'UIImage en fichier PDF
- 29. Conversion fichier texte en html
- 30. conversion & & pour XML en PHP
Quel est le format du flux d'octets? n'est-ce pas en XML? –