TXT杞崲PDF鏂规硶二:鍒╃敤Word杞崲鐨勬晥鐜囧強閫傚簲鎬х爺绌?JAVA鐜)

TXT杞崲PDF鏂规硶2:鍒╃敤Word杞崲鐨勬晥鐜囧強閫傚簲鎬х爺绌?JAVA鐜)

缁撹锛氬鐞嗘枃浠剁殑椤垫暟绾﹀锛屽崟椤靛鐞嗘晥鐜囩害楂樸€傜浉姣攚ps锛屼笉璁烘槸澶ф枃浠惰繕鏄皬鏂囦欢锛岄兘鏄庢樉瑕佹參寰堝銆傚鐞嗘枃瀛楃紪鐮佷负UTF-8鐨勬枃浠舵椂閫熷害杈冨揩銆傦紙鏌ョ湅WPS娴嬭瘯缁撴灉锛?/strong>

0. 杩愯鐜

鏃㈢劧鏄埄鐢∕icrosoft Office word锛屾墍浠ョ悊鎵€褰撶劧闇€瑕佽繍琛屽湪Windows涓嬨€傛祴璇曠敤鐨凮ffice鐗堟湰锛?010銆?/p>

1.闇€瑕佺殑杈呭姪宸ュ叿锛?/p>

鐢变簬java鐜鏃犳硶鐩存帴璋冪敤ActiveX锛屾墍浠ュ€熷姪浜庡紑婧愮殑jacob銆傜増鏈? 1.17銆?/p>

2.浠g爜鍑嗗锛?/p>

杩欓噷鍙垪涓惧嚑涓叧閿楠ゅ惂锛屽畬鏁翠唬鐮佸氨涓嶅垪涓句簡锛屽彲浠ヨ嚜琛岀粍鍚堛€?/p>

2.1 鍒涘缓Word鐨凙ctiveX瀵硅薄

ActiveXComponent app = new ActiveXComponent("Word.Application");
app.setProperty("Visible", false);

2.2 鎵撳紑txt鏂囨。

Dispatch docs = app.getProperty("Documents").toDispatch();
Dispatch  doc = Dispatch.call(docs,
                    "Open",
                    in, // FileName
                    false, // ConfirmConversions
                    true // ReadOnly
                    ).toDispatch();

2.3 杈撳嚭涓篜DF鏂囨。

Dispatch.call(doc,
                    "SaveAs",
                    out, // FileName
                    17);

2.4 鍏抽棴鏂囨。

Dispatch.call(doc, "Close", false);
doc.safeRelease();

2.5 鍏抽棴ActiveX

if (docs != null) {
    docs.safeRelease();
}
if (app != null) {
   app.invoke("Quit", 0);
   app.safeRelease();
}

3. 杞崲鏁堢巼

鍦烘櫙1锛歵xt鏂囦欢澶у皬锛?.02k锛孏BK缂栫爜銆傜敓鎴恜df鍚?23k~124k锛?椤点€傜敓鎴愮殑鏂囦欢涓嶉兘鏄浉鍚屽ぇ灏忥紝杩欎釜闂杩樻湁寰呯爺绌躲€傚鐞?024涓枃浠讹紝鐢ㄦ椂锛?98889ms锛?4鍒?8绉掋€傚钩鍧囨瘡涓枃浠剁敤鏃讹細877.8ms銆傛瘮WPS鏂囧瓧603.5ms鎱簡45%銆?/p>

鍦烘櫙2锛歵xt鏂囦欢澶у皬锛?.04k锛孶TF-8缂栫爜銆傜敓鎴恜df鏄?22k锛?椤点€俻df鏂囦欢杩樻槸澶у皬涓嶄竴銆傚鐞?024涓枃浠讹紝鐢ㄦ椂锛?76222ms锛?4鍒?6绉掋€傚钩鍧囨瘡涓枃浠剁敤鏃讹細855.7ms銆傛椂闂寸暐浣庝簬鍦烘櫙1銆傚師鍥犳湁鍙兘鏄痺ord闇€瑕佹妸GBK缂栫爜鐨勬枃浠惰浆鎹㈡垚UTF-8缂栫爜鍚庢墠鑳藉啀鎵ц鎿嶄綔锛岃繖涓€鐐规湁寰呰瘉瀹炪€?/p>

鍦烘櫙3锛歵xt鏂囦欢澶у皬锛?.42m锛孏BK缂栫爜銆傜敓鎴恜df鍚?3.4m锛?430椤点€傚鐞?涓枃浠讹紝鐢ㄦ椂锛?64491ms锛?鍒?4绉掋€傚钩鍧囨瘡涓枃浠剁敤鏃讹細232245.5ms銆傛瘮WPS鏂囧瓧鎱?.6鍊嶃€?/p>

鍒嗘瀽缁撴灉寰楀嚭锛氬鐞嗘枃浠剁殑椤垫暟绾﹀锛屽崟椤靛鐞嗘晥鐜囩害楂樸€傜浉姣攚ps锛屼笉璁烘槸澶ф枃浠惰繕鏄皬鏂囦欢锛岄兘鏄庢樉瑕佹參寰堝銆?/p>