2009-01-07 8 views
2

Quelqu'un pourrait-il donner une idée sur la façon de convertir un fichier Excel en CLOB dans Oracle à travers JDBC. Je voudrais savoir comment convertir le fichier excel dans une chaîne en utilisant l'API disponible dans le cadre de JDK et la conversion de la chaîne en clob devrait être simple. Merci d'avance. Si une question similaire a déjà été soulevée, veuillez me fournir le lien.Pour télécharger un fichier Excel sous forme de clob

+0

Est-ce que cela a quelque chose à voir avec Oracle en plus de la destination? La question serait-elle la même si la destination était MySQL? –

Répondre

0

Vous aurez besoin d'une bibliothèque en dehors de l'API Java standard pour lire un document Excel binaire.

Vous pouvez utiliser le JExcelApi pour lire dans le document Excel, puis créer une chaîne CSV lors de la lecture dans le document.

Si vous ne voulez pas utiliser une bibliothèque externe, alors je remplacerais le type de champ par blob et utiliserait la méthode setBlob de java.sql.PreparedStatment en lui passant un FileInputStream.

0

Lorsque vous avez besoin pour analyser les données (lire le contenu), vous pouvez utiliser une bibliothèque comme Apache POI

Si vous souhaitez utiliser la seule API standard, puis enregistrez le Excel sous forme de fichier CSV et de traiter le fichier en tant liste de valeurs séparées par des virgules. Cela peut facilement être fait avec readline pour lire chaque ligne et diviser cette ligne en valeurs en utilisant la méthode split sur une chaîne.

Si vous n'avez pas besoin d'analyser les données que vous devez diffuser les données directement à partir du fichier à un CLOB et non transformer d'abord Excel à une chaîne Un exemple peut être trouvé ici: http://www.oracle.com/technology/sample_code/tech/java/sqlj_jdbc/files/advanced/LOBSample/LOBSample.java.html

+0

Le lien est cassé. – jvangeld

0

Quelle est la représentation de une feuille de calcul au format texte? Les valeurs indentées par les onglets? Les formules? Que faire si vous avez plus d'une page dans le fichier xls?

Si ce que vous voulez vraiment faire est de stocker le fichier dans la base de données, utilisez un BLOB et stockez-le en octets.