2012-12-13 2 views
1

J'ai besoin de transformer des données XML en un fichier Excel. J'ai le code qui fonctionne bien quand j'écris dans un fichier, cependant, quand j'essaye d'écrire dans un flux de sortie, le code ne fonctionne pas. Tout ce que j'essaie de faire était de créer un fichier Excel en utilisant les classes Apache POI, et d'écrire dans un flux de sortie et de le renvoyer à Oracle B2B, ce qui créerait un fichier Excel dans le serveur SFTP.Cahier de travail et référence d'Oracle B2B

Le code ci-dessous fonctionne très bien, (écrire dans un fichier, en utilisant FileOutputStream)

 FileOutputStream output1 = 
      new FileOutputStream(new File("C:\\Oracle\\Middleware\\home_11gR1\\user_projects\\domains\\mysoa_domain\\dsp\\PO_1234.xls")); 
     workbook.write(output1); 

Le code ci-dessous ne fonctionne pas,

workbook.write((ByteArrayOutputStream)output); 

Je ne sais pas quel serait le problème ici. Toutes les idées et suggestions sont grandement appréciées.

Répondre

0

Essayez de fermer le flux. Peut-être que si vous le laissez ouvert l'information écrite ne sera pas rincée.

Voir également using buffered stream for your IO

+0

Merci, j'ai fermé le flux, il semble que la « sortie » qui est une liste, cependant, quand a essayé de convertir en un OutputStream est ce qui est à l'origine du problème, je suis pas sûr comment écrire le classeur à un flux de sortie. – user1902612

Questions connexes