Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 49496|Răspunde: 2

[Sursă] Explicație detaliată a Operațiunii Excel NPOI

[Copiază linkul]
Postat pe 2021-5-16 21:04:14 | | | |
NPOI poate citi și scrie documente Word sau Excel fără Office instalat. NPOI este un proiect open-source C# pentru citirea și scrierea documentelor componente Microsoft OLE2, cum ar fi Excel și WORD.
Recenzie:

Hotărârea NPOI privind tipul de dată a celulei
https://www.itsvse.com/thread-9649-1-1.html

Importă imagini în foi Excel folosind NPOI [cu cod sursă]
https://www.itsvse.com/thread-9477-1-1.html

NPOI stabilește lățimea și înălțimea celulelor
https://www.itsvse.com/thread-3522-1-1.html

. Operația de citire și scriere NPOI plug-in Excel pentru Net
https://www.itsvse.com/thread-2288-1-1.html

Numele Adunării
Module/spații de nume
ilustra
NPOI.DLL
NPOI. POIF-uri
Biblioteca de citire/scriere a atributelor documentelor OLE2/ActiveX
NPOI.DLL
NPOI. DDF
Biblioteca de citire/scriere de desene Microsoft Office
NPOI.DLL
NPOI. HPSF
Biblioteca de citire/scriere a documentelor OLE2/ActiveX
NPOI.DLL
NPOI. HSSF
Bibliotecă de citire/scriere în format Microsoft Excel BIFF (Excel 97-2003, doc)
NPOI.DLL
NPOI. SS
Interfața publică Excel și motorul de calcul al formulelor Excel
NPOI.DLL
NPOI. Util
Biblioteca de bază oferă multe funcții utile pentru dezvoltarea altor proiecte de formate de fișiere de citire/scriere
NPOI. OOXML.DLL
NPOI. XSSF
Biblioteca de citire și scriere în format Excel 2007 (xlsx)
NPOI. OOXML.DLL
NPOI. XWPF
Bibliotecă de citire/scriere în format Word 2007 (docx)
NPOI. OpenXml4Net.DLL
NPOI. OpenXml4Net
Biblioteca de citire și scriere a pachetului zip-cache OpenXml
NPOI. OpenXmlFormats.DLL
NPOI. OpenXmlFormats
Biblioteca de relații de obiecte OpenXml din Microsoft Office

HSSFWorkbook: este o versiune a Excel 2003 sau anterioară (inclusiv 2003) cu o extensie .xls
XSSFWorkbook: este versiunea Excel 2007 cu extensia .xlsx
Recunoaște automat versiunile Excel

Când citești Excel, npoi apelează WorkbookFactory.Create pentru a recunoaște automat versiunea:



Adresa codului sursă:Autentificarea cu hyperlink este vizibilă.



Cod de implementare:

XSSFWorkbook 2007 aruncă o excepție Flow închisă Nu se poate accesa



Cod de test:



Când se exportă un fișier într-un flux, apelarea metodei Write aruncă o excepție:



Excepție nerezolvată. System.ObjectDisposedException: Nu se poate accesa un flux închis.
   la System.IO.MemoryStream.Seek(Int64 offset, SeekOrigin loc)

HSSFWorkbook nu are această problemă și nu există nicio modalitate de a supraîncărca interfața IWorkbook Write, așa cum se arată în figura de mai jos:



DarObiectul XSSFWorkbook va avea un parametru leaveOpen suplimentar, adresa codului sursă:Autentificarea cu hyperlink este vizibilă.



Soluția 1:

Soluția 2:

Creează un nou obiect NpoiMemoryStream și suprascrie metoda Close astfel:

Folosește-l astfel:

Excepția XSSFWorkbook CopySheet

Când foaia este șablonul meu personalizat, apelarea metodei CopySheet va genera următoarea excepție:

Referința obiectului nu este setată ca o instanță a unui obiect.

Foaie clonă folosind CloneSheet, codul este următorul:



(Sfârșit)




Precedent:Redis MISCONF Redis este configurat pentru a salva instantanee RDB
Următor:Cum să salvezi un flux într-un fișier în C#/.NET
Postat pe 2021-9-17 09:46:51 |
kk învață
Postat la 29-01-2023 15:03:59 |
Învață de la mica aia
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com