一種表格轉(zhuǎn)換方法及裝置制造方法
【專利摘要】本發(fā)明適用于辦公【技術(shù)領(lǐng)域】,提供了一種表格轉(zhuǎn)換方法及裝置,所述方法包括:提取所述表格中每個(gè)單元格的單元格信息;根據(jù)提取的單元格信息生成超文本標(biāo)記語言HTML代碼;通過瀏覽器解析所述HTML代碼,加載網(wǎng)頁,所述網(wǎng)頁中顯示了所述表格;將所述網(wǎng)頁轉(zhuǎn)換為展示了所述表格的圖片文件。在本發(fā)明中,提取Excel文檔中的表格的單元格信息,根據(jù)提取到的單元格信息生成HTML代碼,然后通過瀏覽器將該HTML代碼轉(zhuǎn)換為展示了所述表格的圖片文件,增強(qiáng)了Excel文檔中的表格在各種搭載了不同操作系統(tǒng)的移動(dòng)終端上的可讀性,同時(shí)提高了轉(zhuǎn)換效率。
【專利說明】一種表格轉(zhuǎn)換方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于辦公【技術(shù)領(lǐng)域】,尤其涉及一種表格轉(zhuǎn)換方法及裝置。
【背景技術(shù)】
[0002]隨著移動(dòng)終端的快速發(fā)展,人們越來越多地通過移動(dòng)終端辦公、查閱文檔等。但是,由于在個(gè)人計(jì)算機(jī)(Personal Computer,PC)上通過辦公軟件生成的文檔的格式多種多樣,移動(dòng)終端搭載的操作系統(tǒng)也各不相同,這樣容易造成在PC上生成的文檔的格式在移動(dòng)終端中不兼容,導(dǎo)致文檔無法在移動(dòng)終端中正常打開。
[0003]Excel文檔在辦公領(lǐng)域中占據(jù)著非常重要的地位,然而在移動(dòng)終端上進(jìn)行顯示時(shí)會(huì)出現(xiàn)不兼容或者無法正常打開的情況。為了能夠適應(yīng)各種搭載了不同操作系統(tǒng)的移動(dòng)終端,現(xiàn)有的做法是將ExceI文檔轉(zhuǎn)換成便攜文件格式(PortabIe Document Format, PDF),然后在移動(dòng)終端中顯示。但是得到的PDF文檔容易出現(xiàn)換頁的問題,可讀性差。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于提供一種表格轉(zhuǎn)換方法,旨在增強(qiáng)Excel文檔中的表格在各種搭載了不同操作系統(tǒng)的移動(dòng)終端上的可讀性。
[0005]本發(fā)明是這樣實(shí)現(xiàn)的,一種表格轉(zhuǎn)換方法,包括:
[0006]提取所述表格中每個(gè)單元格的單元格信息;
[0007]根據(jù)提取的單元格信息生成超文本標(biāo)記語言HTML代碼;
[0008]通過瀏覽器解析所述HTML代碼,加載網(wǎng)頁,所述網(wǎng)頁中顯示了所述表格;
[0009]將所述網(wǎng)頁轉(zhuǎn)換為展示了所述表格的圖片文件。
[0010]進(jìn)一步地,所述單元格信息包括所述單元格的行標(biāo)識(shí)、所述單元格的列標(biāo)識(shí)和所述單元格中的數(shù)據(jù)。
[0011]進(jìn)一步地,所述單元格信息還包括以下至少一項(xiàng):所述單元格的格式和所述單元格中的數(shù)據(jù)的數(shù)據(jù)格式。
[0012]進(jìn)一步地,所述將所述網(wǎng)頁轉(zhuǎn)換為展示了所述表格的圖片文件包括:
[0013]對(duì)所述瀏覽器中顯示的所述網(wǎng)頁的網(wǎng)頁內(nèi)容進(jìn)行截圖,得到展示了所述表格的圖片文件。
[0014]進(jìn)一步地,在所述根據(jù)提取的單元格信息生成HTML代碼之后,在所述通過瀏覽器解析所述HTML代碼之前,所述方法還包括:
[0015]創(chuàng)建臨時(shí)文件目錄;
[0016]將所述HTML代碼放入所述臨時(shí)文件目錄;
[0017]在所述將所述網(wǎng)頁轉(zhuǎn)換為展示了所述表格的圖片文件之后,所述方法還包括:
[0018]刪除所述臨時(shí)文件目錄中的所述HTML代碼。
[0019]本發(fā)明的另一目的在于提供一種表格轉(zhuǎn)換裝置,包括:
[0020]提取單元,用于提取所述表格中每個(gè)單元格的單元格信息;[0021]生成單元,用于根據(jù)提取的單元格信息生成超文本標(biāo)記語言HTML代碼;
[0022]解析單元,用于通過瀏覽器解析所述HTML代碼,加載網(wǎng)頁,所述網(wǎng)頁中顯示了所述表格;
[0023]轉(zhuǎn)換單元,用于將所述網(wǎng)頁轉(zhuǎn)換為展示了所述表格的圖片文件。
[0024]進(jìn)一步地,所述單元格信息包括所述單元格的行標(biāo)識(shí)、所述單元格的列標(biāo)識(shí)和所述單元格中的數(shù)據(jù)。
[0025]進(jìn)一步地,所述單元格信息還包括以下至少一項(xiàng):所述單元格的格式和所述單元格中的數(shù)據(jù)的數(shù)據(jù)格式。
[0026]進(jìn)一步地,所述轉(zhuǎn)換單元包括:
[0027]截圖子單元,用于對(duì)所述瀏覽器中顯示的所述網(wǎng)頁的網(wǎng)頁內(nèi)容進(jìn)行截圖,得到展示了所述表格的圖片文件。
[0028]進(jìn)一步地,所述裝置還包括:
[0029]創(chuàng)建單元,用于創(chuàng)建臨時(shí)文件目錄;
[0030]放入單元,用于將所述HTML代碼放入所述臨時(shí)文件目錄;
[0031]刪除單元,用于刪除所述臨時(shí)文件目錄中的所述HTML代碼。
[0032]在本發(fā)明中,提取Excel文檔中的表格的單元格信息,根據(jù)提取到的單元格信息生成超文本標(biāo)記語言(Hypertext Markup Language,HTML)代碼,然后通過瀏覽器將該HTML代碼轉(zhuǎn)換為展示了所述表格的圖片文件,增強(qiáng)了 Excel文檔中的表格在各種搭載了不同操作系統(tǒng)的移動(dòng)終端上的可讀性,同時(shí)提高了轉(zhuǎn)換效率。
【專利附圖】
【附圖說明】
[0033]圖1是本發(fā)明實(shí)施例提供的一種表格轉(zhuǎn)換方法的實(shí)現(xiàn)流程圖;
[0034]圖2是本發(fā)明實(shí)施例提供的一種表格轉(zhuǎn)換裝置的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0035]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0036]在本發(fā)明實(shí)施例中,提取Excel文檔中的表格的單元格信息,根據(jù)提取到的單元格信息生成HTML代碼,然后通過瀏覽器將該HTML代碼轉(zhuǎn)換為展示了所述表格的圖片文件,增強(qiáng)了 Excel文檔中的表格在各種搭載了不同操作系統(tǒng)的移動(dòng)終端上的可讀性,同時(shí)提高了轉(zhuǎn)換效率。
[0037]圖1示出了本發(fā)明實(shí)施例提供的一種表格轉(zhuǎn)換方法的實(shí)現(xiàn)流程,詳述如下:
[0038]在步驟SlOl中,提取所述表格中每個(gè)單元格的單元格信息。
[0039]在提取Excel文檔中的表格的單元格信息之前,即對(duì)Excel文檔中的表格進(jìn)行轉(zhuǎn)換之前,啟動(dòng)監(jiān)聽服務(wù),所述監(jiān)聽服務(wù)用于監(jiān)控表格轉(zhuǎn)換過程。為了能夠監(jiān)控轉(zhuǎn)換過程,采用Web監(jiān)聽技術(shù)實(shí)現(xiàn)轉(zhuǎn)換Web服務(wù),該轉(zhuǎn)換Web服務(wù)用于監(jiān)控轉(zhuǎn)換過程。在本發(fā)明實(shí)施例中,在轉(zhuǎn)換過程開始前,啟動(dòng)轉(zhuǎn)換Web服務(wù),記錄轉(zhuǎn)換過程發(fā)生的事件,生成相應(yīng)的日志,以便系統(tǒng)管理員通過該日志查看表格的轉(zhuǎn)換過程。[0040]為了高效地提取Excel文檔中的表格的數(shù)據(jù),作為本發(fā)明的一個(gè)實(shí)施例,通過POI提取所述表格中的單元格信息,所述單元格信息包括所述單元格的行標(biāo)識(shí)、所述單元格的列標(biāo)識(shí)和所述單元格中的數(shù)據(jù)。進(jìn)一步地,所述單元格信息還包括以下至少一項(xiàng):所述單元格的格式和所述單元格中的數(shù)據(jù)的數(shù)據(jù)格式。
[0041]Apache軟件基金會(huì)是為運(yùn)作開源軟件項(xiàng)目的Apache團(tuán)體提供支持的非盈利性組織,POI是Apache軟件基金會(huì)中的開源子項(xiàng)目,為Microsoft Office的文檔提供用Java編寫的跨平臺(tái)的應(yīng)用編程接口(Application Programming Interface,API),使用該API可以實(shí)現(xiàn)對(duì)Microsoft Office文檔進(jìn)行各種操作。
[0042]HSSF在POI中提供讀寫Excel文檔的功能,可以對(duì)Excel文檔中的工作表、行和單元格進(jìn)行讀寫等操作。在本發(fā)明實(shí)施例中,通過POI中HSSF的系列函數(shù)讀取Excel文檔中每一張工作表、每一行以及每一單元格中的數(shù)據(jù)。
[0043]讀取工作表的代碼如:HSSFSheetsheet=wb.getSheetAt (0),表示讀取 Excel文檔中的第一張工作表,工作表編號(hào)從O開始;讀取行的代碼如:HSSFR0W row=sheet.getROW(0),表示讀取工作表中的第一行,行編號(hào)從O開始;讀取單元格中數(shù)據(jù)的代碼如:HSSFCell cell=row.getCell (0),表示讀取行中的第一個(gè)單元格,單元格編號(hào)從O開始。在這個(gè)過程中,可以同時(shí)記錄下單元格對(duì)應(yīng)的行標(biāo)識(shí)和列標(biāo)識(shí)。
[0044]同樣,通過HSSF中的其他函數(shù)可以解析出單元格中數(shù)據(jù)的數(shù)據(jù)格式,如字體大小、字體顏色等信息。另外,單元格的格式也能通過HSSF中的系列函數(shù)獲取到,如單元格的大小、是否使用背景等信息。
[0045]由于工作表中并非每個(gè)單元格中都有數(shù)據(jù),把有數(shù)據(jù)的單元格稱為有效單元格,在提取單元格信息之前,檢測存在有效單元格的最大行標(biāo)識(shí)和最大列標(biāo)識(shí),僅提取O行O列與最大行標(biāo)識(shí)和最大列標(biāo)識(shí)所圍成區(qū)域中的單元格信息。
[0046]到此,通過POI中的API即可讀取Excel文檔中每一張工作表的每一個(gè)有效單元格的單元格信息,完成對(duì)整個(gè)Excel文檔的自動(dòng)解析。
[0047]在步驟S102中,根據(jù)提取的單元格信息生成超文本標(biāo)記語言HTML代碼。
[0048]在本發(fā)明實(shí)施例中,同樣,使用POI中的API將上述提取到的單元格信息生成HTML代碼,其中,每一個(gè)單元格的單元格信息必須按照對(duì)應(yīng)關(guān)系進(jìn)行綁定。
[0049]為了存放轉(zhuǎn)換過程中產(chǎn)生的中間文件,生成HTML代碼后,創(chuàng)建臨時(shí)文件目錄;將所述HTML代碼放入所述臨時(shí)文件目錄,供后續(xù)步驟使用,該臨時(shí)文件目錄也用于存放其他中間步驟生成的臨時(shí)文件。
[0050]在步驟S103中,通過瀏覽器解析所述HTML代碼,加載網(wǎng)頁,所述網(wǎng)頁中顯示了所述表格。
[0051]在本發(fā)明實(shí)施例中,采用native方式調(diào)用本地瀏覽器,在Windows平臺(tái)中,本地瀏覽器即為IE瀏覽器。IE瀏覽器解析上述生成的HTML代碼,加載網(wǎng)頁,當(dāng)加載進(jìn)度條顯示為100%時(shí)即加載完成,IE瀏覽器將該HTML代碼以網(wǎng)頁的形式顯示,網(wǎng)頁中顯示了所述表格。
[0052]IE瀏覽器顯示所述表格遵循的原理具體為:IE瀏覽器獲取瀏覽器對(duì)象模型(Browser Object Mode, Β0Μ),解析上述HTML代碼,根據(jù)HTML代碼中每一個(gè)單元格對(duì)應(yīng)的行標(biāo)識(shí)和列標(biāo)識(shí),確定單元格在網(wǎng)頁顯示時(shí)的排列位置。確定排列位置后,IE瀏覽器的渲染引擎將上述HTML代碼中的單元格信息渲染到網(wǎng)頁對(duì)應(yīng)的位置上,網(wǎng)頁以圖片的方式呈現(xiàn)整個(gè)表格。
[0053]在本發(fā)明實(shí)施例中,渲染前IE瀏覽器在臨時(shí)文件目錄中創(chuàng)建臨時(shí)圖片文件,然后將單元格信息渲染到該臨時(shí)圖片文件上,用于網(wǎng)頁顯示。
[0054]在步驟S104中,將所述網(wǎng)頁轉(zhuǎn)換為展示了所述表格的圖片文件。
[0055]渲染完成后,對(duì)所述瀏覽器中顯示的所述網(wǎng)頁的網(wǎng)頁內(nèi)容進(jìn)行截圖,得到展示了所述表格的圖片文件。
[0056]成功生成圖片文件后,釋放IE瀏覽器,刪除所述臨時(shí)文件目錄中的所有中間步驟產(chǎn)生的臨時(shí)文件,包括HTML代碼和臨時(shí)圖片文件,既能夠保證數(shù)據(jù)的安全也可以節(jié)省存儲(chǔ)空間。停止轉(zhuǎn)換Web服務(wù),本次轉(zhuǎn)換過程的監(jiān)聽結(jié)束。在下一次轉(zhuǎn)換開始時(shí),該轉(zhuǎn)換Web服務(wù)重新開始,重新記錄轉(zhuǎn)換過程發(fā)生的事件。
[0057]由于將Excel文檔中的表格轉(zhuǎn)換為圖片文件的過程采用的是Java語言,最終生成的圖片文件可以在搭載不同操作系統(tǒng)的移動(dòng)終端上打開,操作系統(tǒng)包括但不限于Android系統(tǒng)、IOS系統(tǒng)、Windows系統(tǒng)和WP8系統(tǒng)等,實(shí)現(xiàn)了跨平臺(tái)應(yīng)用。
[0058]在本發(fā)明實(shí)施例中,提取Excel文檔中的表格的單元格信息,根據(jù)提取到的單元格信息生成HTML代碼,然后通過瀏覽器將該HTML代碼轉(zhuǎn)換為展示了所述表格的圖片文件,增強(qiáng)了 Excel文檔中的表格在各種搭載了不同操作系統(tǒng)的移動(dòng)終端上的可讀性,同時(shí)提高了轉(zhuǎn)換效率。
[0059]圖2示出了本發(fā)明實(shí)施例提供的一種表格轉(zhuǎn)換裝置的結(jié)構(gòu)框圖,該裝置可以位于安裝有Windows系統(tǒng)的計(jì)算機(jī)上,用于執(zhí)行本發(fā)明圖1實(shí)施例所述的一種表格轉(zhuǎn)換方法。為了便于說明,僅示出了與本實(shí)施例相關(guān)的部分。
[0060]參照圖2,該裝置包括:
[0061]提取單元21,提取表格中每個(gè)單元格的單元格信息。
[0062]生成單元22,根據(jù)提取的單元格信息生成超文本標(biāo)記語言HTML代碼。
[0063]解析單元23,通過瀏覽器解析HTML代碼,加載網(wǎng)頁,網(wǎng)頁中顯示了所述表格。
[0064]轉(zhuǎn)換單元24,將網(wǎng)頁轉(zhuǎn)換為展示了所述表格的圖片文件。
[0065]可選地,單元格信息包括單元格的行標(biāo)識(shí)、單元格的列標(biāo)識(shí)和單元格中的數(shù)據(jù)。
[0066]進(jìn)一步地,單元格信息還包括以下至少一項(xiàng):單元格的格式和單元格中的數(shù)據(jù)的數(shù)據(jù)格式。
[0067]可選地,所述轉(zhuǎn)換單元24具體包括:
[0068]截圖子單元,對(duì)瀏覽器中顯示的網(wǎng)頁內(nèi)容進(jìn)行截圖,得到展示了所述表格的圖片文件。
[0069]可選地,所述裝置還包括:
[0070]創(chuàng)建單元,創(chuàng)建臨時(shí)文件目錄。
[0071 ] 放入單元,將所述HTML代碼放入所述臨時(shí)文件目錄。
[0072]將表格轉(zhuǎn)換成圖片文件后,為了數(shù)據(jù)的安全和節(jié)省存儲(chǔ)空間,所述裝置還包括:
[0073]刪除單元,刪除所述臨時(shí)文件目錄中的所述HTML代碼。
[0074]在本發(fā)明實(shí)施例中,提取Excel文檔中的表格的單元格信息,根據(jù)提取到的單元格信息生成HTML代碼,然后通過瀏覽器將該HTML代碼轉(zhuǎn)換為展示了所述表格的圖片文件,增強(qiáng)了 Excel文檔中的表格在各種搭載了不同操作系統(tǒng)的移動(dòng)終端上的可讀性,同時(shí)提高了轉(zhuǎn)換效率。
[0075]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種表格轉(zhuǎn)換方法,其特征在于,所述方法包括: 提取所述表格中每個(gè)單元格的單元格信息; 根據(jù)提取的單元格信息生成超文本標(biāo)記語言HTML代碼; 通過瀏覽器解析所述HTML代碼,加載網(wǎng)頁,所述網(wǎng)頁中顯示了所述表格; 將所述網(wǎng)頁轉(zhuǎn)換為展示了所述表格的圖片文件。
2.如權(quán)利要求1所述的方法,其特征在于,所述單元格信息包括所述單元格的行標(biāo)識(shí)、所述單元格的列標(biāo)識(shí)和所述單元格中的數(shù)據(jù)。
3.如權(quán)利要求2所述的方法,其特征在于,所述單元格信息還包括以下至少一項(xiàng):所述單元格的格式和所述單元格中的數(shù)據(jù)的數(shù)據(jù)格式。
4.如權(quán)利要求1?3任一項(xiàng)所述的方法,其特征在于,所述將所述網(wǎng)頁轉(zhuǎn)換為展示了所述表格的圖片文件包括: 對(duì)所述瀏覽器中顯示的所述網(wǎng)頁的網(wǎng)頁內(nèi)容進(jìn)行截圖,得到展示了所述表格的圖片文件。
5.如權(quán)利要求1?3任一項(xiàng)所述的方法,其特征在于,在所述根據(jù)提取的單元格信息生成HTML代碼之后,在所述通過瀏覽器解析所述HTML代碼之前,所述方法還包括: 創(chuàng)建臨時(shí)文件目錄; 將所述HTML代碼放入所述臨時(shí)文件目錄; 在所述將所述網(wǎng)頁轉(zhuǎn)換為展示了所述表格的圖片文件之后,所述方法還包括: 刪除所述臨時(shí)文件目錄中的所述HTML代碼。
6.一種表格轉(zhuǎn)換裝置,其特征在于,所述裝置包括: 提取單元,用于提取所述表格中每個(gè)單元格的單元格信息; 生成單元,用于根據(jù)提取的單元格信息生成超文本標(biāo)記語言HTML代碼; 解析單元,用于通過瀏覽器解析所述HTML代碼,加載網(wǎng)頁,所述網(wǎng)頁中顯示了所述表格; 轉(zhuǎn)換單元,用于將所述網(wǎng)頁轉(zhuǎn)換為展示了所述表格的圖片文件。
7.如權(quán)利要求6所述的裝置,其特征在于,所述單元格信息包括所述單元格的行標(biāo)識(shí)、所述單元格的列標(biāo)識(shí)和所述單元格中的數(shù)據(jù)。
8.如權(quán)利要求7所述的裝置,其特征在于,所述單元格信息還包括以下至少一項(xiàng):所述單元格的格式和所述單元格中的數(shù)據(jù)的數(shù)據(jù)格式。
9.如權(quán)利要求6?8任一項(xiàng)所述的裝置,其特征在于,所述轉(zhuǎn)換單元包括: 截圖子單元,用于對(duì)所述瀏覽器中顯示的所述網(wǎng)頁的網(wǎng)頁內(nèi)容進(jìn)行截圖,得到展示了所述表格的圖片文件。
10.如權(quán)利要求6?8任一項(xiàng)所述的裝置,其特征在于,所述裝置還包括: 創(chuàng)建單元,用于創(chuàng)建臨時(shí)文件目錄; 放入單元,用于將所述HTML代碼放入所述臨時(shí)文件目錄; 刪除單元,用于刪除所述臨時(shí)文件目錄中的所述HTML代碼。
【文檔編號(hào)】G06F17/30GK103853806SQ201310446884
【公開日】2014年6月11日 申請日期:2013年9月26日 優(yōu)先權(quán)日:2013年9月26日
【發(fā)明者】廖曉光, 邢文飚, 尹浩祺 申請人:深圳海聯(lián)訊科技股份有限公司