Comment convertir CSV pour Excel?
Est-il un plugin Ruby qui convertit le fichier CSV sur Excel. J'ai fait peu de Google, mais tout ce que je trouve a la conversion de fichier Excel en CSV. Je sais que quelques joyaux laquelle je peux modifier un peu et de les utiliser pour convertir Excel en CSV, mais j'ai besoin de savoir si quelqu'un l'a fait avant lui.
Habituellement, nous laissons Excel importer le fichier CSV. Habituellement, il fonctionne, tout simplement.
Un autre presque-natif alternative: import XML peuvent produire des "joli" documents Excel. Je le nourris à la sortie de Rails' #to_xml dans une transformation XSLT pour ce faire.
Pourquoi ne pas vous suffit d'utiliser OLE? Excel peut ouvrir des fichiers csv et de les enregistrer en tant que fichier xlsx directement...
Excel souvent mangles des données au format CSV. Il va tomber de zéros, convertir en minuscules true/false pour les majuscules, convertir de grands nombres à la notation scientifique, et probablement plus. Par l'envoi à l'utilisateur un fichier XLS, vous pouvez contrôler la mise en forme et éviter de perdre des données.
Excel OLE automation est Windows uniquement, et la plupart des gens sont en cours d'exécution Rubis sur Mac ou Linux. Il exige également une licence payante, alors que d'autres options sont gratuits. Lancement avec OLE a également des problèmes, comme si vous avez besoin de réactiver Bureau, en le lançant avec OLE va s'accrocher Excel indéfiniment, nécessitant une intervention manuelle pour le faire fonctionner à nouveau.
Un autre presque-natif alternative: import XML peuvent produire des "joli" documents Excel. Je le nourris à la sortie de Rails' #to_xml dans une transformation XSLT pour ce faire.
Pourquoi ne pas vous suffit d'utiliser OLE? Excel peut ouvrir des fichiers csv et de les enregistrer en tant que fichier xlsx directement...
Excel souvent mangles des données au format CSV. Il va tomber de zéros, convertir en minuscules true/false pour les majuscules, convertir de grands nombres à la notation scientifique, et probablement plus. Par l'envoi à l'utilisateur un fichier XLS, vous pouvez contrôler la mise en forme et éviter de perdre des données.
Excel OLE automation est Windows uniquement, et la plupart des gens sont en cours d'exécution Rubis sur Mac ou Linux. Il exige également une licence payante, alors que d'autres options sont gratuits. Lancement avec OLE a également des problèmes, comme si vous avez besoin de réactiver Bureau, en le lançant avec OLE va s'accrocher Excel indéfiniment, nécessitant une intervention manuelle pour le faire fonctionner à nouveau.
OriginalL'auteur Bhushan Lodha | 2012-04-12
Vous devez vous connecter pour publier un commentaire.
Selon ce post, le feuille de calcul le gem est une possibilité. Il semble que ce est un très populaire gem. Check it out. Exemple:
Selon ce post, write_xlsx est une possibilité.
J'ai utilisé le Apache POI bibliothèque avec JRuby pour exporter les fichiers xls. Voici un exemple rapide.
Quelques méthodes utiles pour la mise en forme des feuilles de calcul de PI sont
sheet.createFreezePane(0,1,0,1)
wb.setRepeatingRowsAndColumns(0, -1, -1, 0, 1)
sheet.setColumnWidth(i, 100 *256)
sheet.autoSizeColumn(i)
, mais attention, si vous êtes en cours d'exécution dans headless mode, vous devez appelerjava.lang.System.setProperty("java.awt.headless", "true")
Vous pouvez également utiliser Win32ole sur Windows, si vous avez Excel installé
Quelques méthodes utiles pour la mise en forme avec Excel sont
xl.Rows(1).Font.Bold = true
ws.Cells.EntireColumn.AutoFit
Encore une autre option consiste à écrire directement à Microsoft Feuille de calcul XML format, comme Ryan Bates à Railscasts.com ne à la fin de son l'Exportation CSV et Excel épisode.
Ce bijou a l'air prometteur, trop.
Bon point. J'espère juste que l'exemple ressembler à celle ci-dessus, mais l'ouverture de la CSV directement dans Excel est un plus intelligente idée.
Il est un joyau de plus j'ai trouvé writeexcel a fait le travail très facilement.. Merci encore.
OriginalL'auteur John Douthat
Si vous n'avez pas trouvé un joyau pour convertir CSV pour EXCEL vous pouvez essayer de trouver deux gemmes séparément
require "csv"
dans la bibliothèque standard.OriginalL'auteur Hardik Patel
Le moyen le plus facile est:
,
(virgule) pour un onglet\t
.xls
OriginalL'auteur Aminah Nuraini