Bonjour,
je trouve souvent sur le net pour créer un byte[] à partir d'un File, mais comment faire pour créer un File à partir d'un byte[]
Merci
Version imprimable
Bonjour,
je trouve souvent sur le net pour créer un byte[] à partir d'un File, mais comment faire pour créer un File à partir d'un byte[]
Merci
salut, je sais pas si c'est ce que tu veux faire mais voici comment écrire un byte[] dans un File :
Code:
1
2
3
4
5
6
7
8
9 String s = "bonjour"; byte[] b = s.getBytes(); File test = new File("test.txt"); try{ FileOutputStream fos = new FileOutputStream(test); fos.write(b); fos.close(); }catch(Exception e){}
En fait j'ai une fonction qui reçoit en paramètre un byte[] mais dans cette même fonction après je dois utiliser un File... enfin même plus précisément un FileInputStream.
là je suis pas parce que le fileinputstream c'est pour lire un fichier par un tableau de byte
Tu pourrais pas etre un peu plus précis ou montrer un morceau de code
Et après il ya des classes interne squi utilisent le FileInputStream.Code:
1
2
3
4 public test verify(byte[] Document, boolean returnContent) { File toto = new File(.............); FileInputStream fileInputStream = new FileInputStream(toto);
Donc moi en paramètre j'ai mon byte[] et il faut que j'arrive à un FileInputStream ...
ben je vois pas d'autres solutions que de créer ton fichier à aprtir du tableau de byte et de le réouvrir en lecture avec le fileinputstream, mais cela ne veut pas dire qu'il n'existe pas de meilleures solutions:
A part ça je peux plus t'aiderCode:
1
2
3
4
5
6
7
8 public test verify(byte[] Document, boolean returnContent) { File toto = new File(.............); FileOutputstream fos = new FileOutputStream(toto); fos.write(Document); fos.flush(); fos.close(); FileInputStream fileInputStream = new FileInputStream(toto);
Ok merci, quelqu'un connait-il une autre solution ?
Y en a pas.
Partir d'un byte[] pour arriver à un FileInputStream.. je trouve ça super bizarre de toute façon niveau concept. S'il faut un InputStream, il faut utiliser ByteArrayInputStream.
Le code fourni par Billy14 est correct mais je suis sûr qu'il trouve ça crade (et c'est le cas).