C#下搭建文件格式轉換服務器

文件格式轉換,相信不少涉及到office文檔在線觀看的都會須要,由於瀏覽器還不能徹底支持直接打開office文檔,因此不少狀況下咱們都須要將這些文檔轉換成flash可以播放的格式,可是另外一個問題又來了,有些設備是不支持flash。而筆者通過三個版本的測試,終於有了比較好的一中解決方案。第一種不少人都知道,就是flashpaper可是不幸的是這款軟件已經很老了,第二種就是利用office的com,可是缺點很是明顯,須要不少代碼才能完成很簡單的事,而且還要通過不少配置,這其中的痛苦不言而喻。而第三種就是利用openoffice和jodconverter來完成。html

 

1、須要的軟件

由於jodconverter是java編寫的因此筆者已經將其轉換成了c#類庫,避免了你們在這方面花費不少事件,並且也沒有意義。java

1.openoffice軟件(http://www.openoffice.org/download/index.html) 直接默認安裝便可c#

2.我封裝好的類庫(http://files.cnblogs.com/yaozhenfa/jodconverter.net.rar瀏覽器

 

2、啓動openoffice

筆者的openoffice安裝到了C:\Program Files (x86)\ 因此須要在DOS(開始-)運行-》CMD)輸入以下的指令:服務器

1 C:\>"C:/Program Files (x86)/OpenOffice 4/program/soffice.exe" -accept=socket,hos
2 t=0.0.0.0,port=8080;urp;-headless

 

其中host表示監聽的ip地址,port表示端口。筆者這裏設置的是8080less

 

3、測試

咱們在vs中新建一個控制檯項目,而後將筆者封裝好的類庫所有引用。socket

 

接着寫入以下代碼:工具

 1 using com.artofsolving.jodconverter;
 2 using com.artofsolving.jodconverter.openoffice.connection;
 3 using com.artofsolving.jodconverter.openoffice.converter;
 4 using java.io;
 5 using System;
 6 using System.Collections.Generic;
 7 using System.Linq;
 8 using System.Text;
 9 
10 namespace ConsoleApplication1
11 {
12     class Program
13     {
14         static void Main(string[] args)
15         {
16             File inputFile = new File("c://test.doc");
17             File outputFile = new File("c://test.pdf");
18             OpenOfficeConnection connection = new SocketOpenOfficeConnection(8080);
19             connection.connect();
20             DocumentConverter converter = new OpenOfficeDocumentConverter(connection);
21             converter.convert(inputFile, outputFile);
22             connection.disconnect();
23             System.Console.ReadKey();
24         }
25     }
26 }

 

 

這裏要注意筆者測試的文件在c盤下而且命名爲test.doc讀者須要根據本身的狀況修改,筆者這裏將doc轉換成了pdf,固然還能夠轉換成html等等。測試

 

相信不久的之後你會須要這個解決方案。網站

 

關於java轉c#能夠到該網站中下載(http://www.ikvm.net/

 

4、參考

感謝如下博文提供的技術:

http://blog.csdn.net/hnzhangshilong/article/details/7799664(c#調用java類的方法)

http://blog.csdn.net/oldjavaman/article/details/1742666(構建文件格式轉換服務器)

http://www.cnblogs.com/shanyou/archive/2007/09/11/890139.html(將OpenOffice.org變成一個文件格式轉換工具)

 

但願喜歡的讀者能夠支持,這樣筆者才能去尋找更好的解決方案。有任何問題能夠在評論中詢問。

相關文章
相關標籤/搜索