Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 49496|Répondre: 2

[Source] Explication détaillée de l’opération Excel NPOI

[Copié le lien]
Publié le 16-05-2021 à 21:04:14 | | | |
NPOI peut lire et écrire des documents Word ou Excel sans Office installé. NPOI est un projet open source en C# destiné à lire et écrire des documents composants Microsoft OLE2 tels qu’Excel et WORD.
Révision:

Jugement NPOI sur le type de date de la cellule
https://www.itsvse.com/thread-9649-1-1.html

Importer des images dans des feuilles Excel en utilisant NPOI [avec code source]
https://www.itsvse.com/thread-9477-1-1.html

NPOI fixe la largeur et la hauteur des cellules
https://www.itsvse.com/thread-3522-1-1.html

. Opération de lecture et d’écriture NPOI plug-in Excel pour Net
https://www.itsvse.com/thread-2288-1-1.html

Nom de l’assemblée
modules/espaces de noms
illustrer
NPOI.DLL
NPOI. POIFS
Bibliothèque d’attributs de document OLE2/ActiveX
NPOI.DLL
NPOI. DDF
Bibliothèque de lecture/écriture de dessin Microsoft Office
NPOI.DLL
NPOI. HPSF
Bibliothèque de lecture/écriture de documents OLE2/ActiveX
NPOI.DLL
NPOI. HSSF
Bibliothèque de lecture/écriture au format BIFF (Excel 97-2003, doc)
NPOI.DLL
NPOI. SS
Interface publique Excel et moteur de calcul de formules Excel
NPOI.DLL
NPOI. Util
La bibliothèque de base offre de nombreuses fonctions utiles pour le développement d’autres projets de formats de fichiers lecture/écriture
NPOI. OOXML.DLL
NPOI. XSSF
Bibliothèque de lecture et d’écriture au format Excel 2007 (xlsx)
NPOI. OOXML.DLL
NPOI. XWPF
Bibliothèque de lecture/écriture au format Word 2007 (docx)
NPOI. OpenXml4Net.DLL
NPOI. OpenXml4Net
Bibliothèque de lecture et d’écriture sous-jacente du package zip-pack OpenXml
NPOI. OpenXmlFormats.DLL
NPOI. OpenXmlFormats
Bibliothèque de relations d’objets OpenXml de Microsoft Office

HSSFWorkbook: est une version d’Excel 2003 ou antérieure (y compris 2003) avec une extension .xls
XSSFWorkbook: est la version d’Excel 2007 avec .xlsx extension
Reconnaît automatiquement les versions d’Excel

Lors de la lecture d’Excel, npoi appelle WorkbookFactory.Create pour reconnaître automatiquement la version :



Adresse du code source :La connexion hyperlientérée est visible.



Code d’implémentation :

XSSFWorkbook 2007 propose une exception Impossible d’accéder à un flux fermé



Code de test :



Lors de l’exportation d’un fichier vers un flux, appeler la méthode Write lance une exception :



Exception non traitée. System.ObjectDisposedException : Impossible d’accéder à un flux fermé.
   à System.IO.MemoryStream.Seek(décalage Int64, lieu de SeekOrigin)

HSSFWorkbook n’a pas ce problème, et il n’y a aucun moyen de surcharger l’écriture de l’interface IWorkbook, comme montré dans la figure ci-dessous :



MaisL’objet XSSFWorkbook aura un paramètre leaveOpen supplémentaire, adresse du code source :La connexion hyperlientérée est visible.



Solution 1 :

Solution 2 :

Créez un nouvel objet NpoiMemoryStream et écrasez la méthode Close comme suit :

Utilisez-le comme suit :

Exception du CopySheet XSSFWorkbook

Lorsque la feuille est mon modèle personnalisé, appeler la méthode CopySheet fera apparaître l’exception suivante :

Référence d’objet non définie pour une instance d’un objet.

Feuille de clonage utilisant CloneSheet, le code est le suivant :



(Fin)




Précédent:Redis MISCONF Redis est configuré pour sauvegarder des instantanés RDB
Prochain:Comment sauvegarder un flux dans un fichier en C#/.NET
Publié le 17-09-2021 à 09:46:51 |
kk learn
Publié le 29-01-2023 à 15:03:59 |
Apprenez de la petite
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com