Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 49496|Yanıt: 2

[Kaynak] NPOI Operasyonu Excel Detaylı Açıklaması

[Bağlantıyı kopyala]
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:

Hücre tarih türüne dair NPOI kararı
https://www.itsvse.com/thread-9649-1-1.html

NPOI kullanarak Resimleri Excel Tablolarına İçe Aktar [Kaynak Kodu ile]
https://www.itsvse.com/thread-9477-1-1.html

NPOI, hücrelerin genişliğini ve yüksekliğini belirler
https://www.itsvse.com/thread-3522-1-1.html

. NPOI okuma ve yazma operasyonu Excel tablo eklentisi for Net
https://www.itsvse.com/thread-2288-1-1.html

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
2021-9-17 09:46:51 tarihinde yayınlandı |
KK Learn
2023-1-29 tarihinde 15:03:59 tarihinde yayınlandı |
Küçük cüruftan öğren
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com