2008-10-21 24 views

cevap

3

AODL'ye bakın (bkz. http://odftoolkit.org/projects/odftoolkit/pages/AODL).

  • tam .NET 1.1 metin ve tablo
  • oluşturmak, okuma belgeler, düzenleme için
  • desteği (yani MS.NET ve mono üzerinde çalıştığı), yönetilen kurtarmak belgeler
  • ...
  • Kame tarafından

DÜZENLEME: Yeni bağlantı AODL-Wiki

+0

AODL for .NET'in resmi sürümü artık mevcut değil. Ama hala kullanabileceğiniz bazı çatallar var. Bulduğum en iyi çatallar (yazarların eklenti düzeltmeleriyle) [aodl-yeniden yüklendi] (https://code.google.com/p/aodl-reloaded/) ve [aodl] (https://bitbucket.org/ Chrisc/AOD). Ancak, OpenOffice/LibreOffice'in mevcut sürümlerini kullanarak hala bazı sorunlar olduğunu biliyorum. – Alex

+3

@bmotmans bağlantınız bozuk –

2

ODT standardı hakkında bilgi için OASIS Standards site'a bakabilirsiniz. Gördüğüm kadarıyla, XML tabanlı bir standart kullanıyorlar ve belge standardı için bir XSD'ye sahipler. Bu nedenle, kendi biçiminizle birlikte bir belge dosyasını uygun biçimde oluşturmak için bunu kullanabilirsiniz.

0

kod şu şekilde görünecektir:

private XComponentContext oStrap = uno.util.Bootstrap.bootstrap(); 
XMultiServiceFactory oServMan = (XmultiServiceFactory) oStrap.getServiceManager(); 
XComponentLoader oDesk = (XComponentLoader) oServMan.createInstance("com.sun.star.frame.Desktop"); 
string url = @"private:factory/swriter"; 
PropertyValue[] propVals = new PropertyValue[0]; 
XComponent oDoc = oDesk.loadComponentFromURL(url, "_blank", 0, propVals); 
string docText = "File Content\n\r"; 
((XTextDocument)oDoc).getText().setString(docText); 
string fileName = @"C:\FolderName\FileName.odt"; 
fileName = "file:///" + fileName.Replace(@"\", "/"); 
((XStorable)oDoc).storeAsURL(fileName, propVals); 
((Xcomponent)oDoc).dispose(); 
-1

OpenOffice belgeleri (odt) ZIP dosyaları vardır. Varolan bir tanesini çözebilir, content.xml dosyasını kodla değiştirebilir ve daha sonra bir zip dosyası almak için System.IO.Compression'dan ZipFile sınıfını kullanabilirsiniz.

İlgili konular