à partir de la page JSP, j'ai besoin de parcourir le fichier Excel et après avoir sélectionné le fichier sur le système, j'ai besoin de lire le contenu du fichier Excel et remplir mon formulaire.
Actuellement, j'ai essayé avec le code ci-dessous, mais il ne fonctionne que dans IE avec quelques modifications des options Internet IE pour ActiveXObject. Cela ne fonctionne pas dans le reste des navigateurs. P> veuillez suggérer une solution afin qu'elle fonctionne dans tous les navigateurs. p> p>
5 Réponses :
Il n'est généralement pas possible de lire / écrire un fichier via JavaScript dans un navigateur. Donc, sans aucun plug-ins supplémentaire, vous ne pourrez pas lire / écrire des fichiers Excel du navigateur. Les objets ActiveX d'Excel vous permettent de le faire, mais seulement IE prend en charge les objets ActiveX. P>
Il peut y avoir d'autres plugins pour les autres navigateurs, mais je ne suis au courant aucun. P>
En premier lieu, pourquoi voulez-vous faire cela? Pouvez-vous donner un cas d'utilisation? Peut-être qu'il y a de meilleures options disponibles que ce que vous essayez. P>
Vous devrez transmettre le fichier Excel sur le serveur et effectuer la lecture de l'Excel sur le côté serveur (dans un servlet par exemple). p>
Vous devrez utiliser un du côté du serveur, vous pouvez utiliser Apache Commons Fichier Télécharger . p>
Une fois que vous avez le fichier (ou un flux de l'utilisateur), vous pouvez analyser le fichier en utilisant, disons, Apache POI HSSF / XSSF puis mettez à jour les données dans une base de données ou transmettez-la à un JSP P>
Exigences du projet - L'utilisateur doit sélectionner le fichier Excel sur son système à partir de la page JSP, puis automatiquement tous les champs de formulaire doivent être renseignés. S'il vous plaît suggérer comment puis-je faire cela?
"Il n'est généralement pas possible de lire / écrire un fichier via JavaScript dans un navigateur." Donc, c'est possible, mais un pluggin est votre meilleur pari? Mais vous pouvez faire tout ce que vous aimez et ne vous êtes pas coincé avec l'utilisation du service pour faire le bon travail? Bien que XLSX.JS y accomplit avec terrible DX, cela peut être fait avec beaucoup de recherches. J'ai vu de nombreux exemples de fonctionnement.
Examlez complètement fait dans le navigateur, et c'est un éclair rapide. Je considère cependant de réécrire leur code d'exemple. C'est assez mauvais là-bas. Oss.sheetjs.com/js-xlsx
Je fais tout cela tout le temps - Mes prototypes sont conçus pour laisser les parties prenantes modifier une excellence et faire renseigner le prototype HTML, souvent sans serveur.
( 1 em>) Voici un bouton pratique Macro I Macro I Mise dans mes fichiers Excel, permettant d'économiser sans douleur comme xml (et réaffûtez sous forme de XLS): P> Sub SaveAndExportXML()
Dim fname As String
Dim fnamexml As String
fname = ThisWorkbook.FullName
fnamexml = Replace(fname, ".xls", ".xml", 1, 1, vbTextCompare)
If MsgBox("Will save the following (runtime XML and source XLS) files: " & vbNewLine & "XML: " & fnamexml & vbNewLine & "Src: " & fname & vbNewLine & vbNewLine & "Ok? If so, please click Yes here and on the next 3 prompts...", vbYesNo) = vbNo Then Exit Sub
ActiveWorkbook.SaveAs Filename:=fnamexml, FileFormat:=xlXMLSpreadsheet, ReadOnlyRecommended:=False, CreateBackup:=False
're-save as xls:
ActiveWorkbook.SaveAs Filename:=fname, FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
Un tableur XLSX est un fichier zip avec un tas de fichiers XML. En utilisant quelque chose comme zip.js , vous pouvez extraire les fichiers XML et les analyser dans le navigateur. xlsx.js fait cela. Voici mon exemple simple . Copié ici pour plus de commodité:
Vous pouvez charger et ouvrir le côté du client de fichier dans les navigateurs les plus modernes à l'aide du API de fichier HTML5 p>
Une fois que vous avez chargé le fichier, vous pouvez analyser le contenu avec une bibliothèque prenant en charge certains formats de sortie Excel (tels que CSV / XLSX). P>
Voici quelques options ... P>
Celui-ci fonctionne dans tous les grands navigateurs.
https: //catamphétamine.github .io / lecture-excel-file / p> dans l'exemple ci-dessus API Docs:
http://npmjs.com/package/read-excel-file P > p> DATA code> est cru données de chaîne.
Il peut être analysé à JSON avec un schéma strict en passant à un argument schéma code>. Voir Documents API pour un exemple de cela. P>