|
|
2021-5-16 tarihinde yayınlandı 21:04:14
|
|
|
|

NPOI, Office yüklenmeden Word veya Excel belgelerini okuyup yazabilir. NPOI, Excel ve WORD gibi Microsoft OLE2 bileşen belgelerini okumak ve yazmak için açık kaynaklı bir C# projesidir. Eleştiri:
Meclis adı | modüller/isim alanları | Göstermek | NPOI.DLL | NPOI. POIFS
| OLE2/ActiveX belge özniteliği okuma/yazma kütüphanesi
| NPOI.DLL | NPOI. DDF
| Microsoft Office Çizim okuma/yazma kütüphanesi
| NPOI.DLL | NPOI. HPSF
| OLE2/ActiveX belge okuma/yazma kütüphanesi
| NPOI.DLL | NPOI. HSSF
| Microsoft Excel BIFF (Excel 97-2003, doc) formatı okuma/yazma kütüphanesi
| NPOI.DLL | NPOI. SS
| Excel genel arayüzü ve Excel formül hesaplama motoru
| NPOI.DLL | NPOI. Util
| Temel kütüphane, diğer okuma/yazma dosya formatı projelerinin geliştirilmesi için birçok faydalı işlev sağlar
| NPOI. OOXML.DLL | NPOI. XSSF | Excel 2007 (xlsx) formatı okuma ve yazma kütüphanesi | NPOI. OOXML.DLL | NPOI. XWPF | Word 2007 (docx) formatı okuma/yazma kütüphanesi | NPOI. OpenXml4Net.DLL | NPOI. OpenXml4Net | OpenXml temelinde zip paketi okuma ve yazma kütüphanesi | NPOI. OpenXmlFormats.DLL | NPOI. OpenXmlFormatlar | Microsoft Office OpenXml nesne ilişki kütüphanesi |
HSSFWorkbook: Excel 2003 veya daha eski sürümleri (2003 dahil) ve .xls uzantısı ile
XSSFWorkbook: Excel 2007'nin .xlsx uzantısı olan sürümüdür
Excel sürümlerini otomatik olarak tanır
Excel okurken, npoi WorkbookFactory.Create programını otomatik olarak tanımaya çağırır:
Kaynak kodu adresi:Bağlantı girişi görünür.
Uygulama kodu:
XSSFWorkbook 2007, kapalı bir Akış istisnası oluşturuyor
Test kodu:
Bir dosyayı akışa aktarırken, Write metodu çağrıldığında bir istisna atar:
Çözülemeyen istisna. System.ObjectDisposedException: Kapalı bir Akışa erişilemiyor. System.IO.MemoryStream.Seek adresinde(Int64 ofset, SeekOrigin lokasyonu) HSSFWorkbook'ta bu sorun yoktur ve aşağıdaki şekilde gösterildiği gibi IWorkbook arayüzü Write'ı aşırı yüklemenin bir yolu yoktur:
AmaXSSFWorkbook nesnesinin ek bir leaveOpen parametresi olacak, kaynak kodu adresi:Bağlantı girişi görünür.
Çözüm 1:
Çözüm 2:
Yeni bir NpoiMemoryStream nesnesi oluşturun ve Close yöntemini aşağıdaki gibi geçersiz kılın:
Aşağıdaki şekilde kullanın:
XSSFWorkbook CopySheet istisnası
Tablo benim özel şablonum olduğunda, CopySheet yöntemini çağırmak aşağıdaki istisna yaratır:
Nesne referansı, bir nesnenin örneğine ayarlanmamıştır. CloneSheet kullanarak klonlama sayfası, kod şu şekildedir:
(Son)
|
Önceki:Redis MISCONF Redis, RDB anlık görüntülerini kaydedecek şekilde yapılandırılmıştırÖnümüzdeki:C#/.NET ile bir akışı bir dosyaya nasıl kaydedilir
|