麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > VBScript > 正文

TXT轉(zhuǎn)HTM、HTML「TXT轉(zhuǎn)網(wǎng)頁」的vbs實(shí)現(xiàn)代碼

2020-07-26 11:50:10
字體:
供稿:網(wǎng)友
在眾多文本編輯器中,Microsoft的Word是功能很強(qiáng)大的。況且XP PRO本身支持VBS調(diào)用Word文檔對象,那么使用VBS是最好不過的了。思路如下:VBS打開Word,Word打開TXT,另存為網(wǎng)頁,退出。

1. VBS調(diào)用Word.Application組件

如果電腦中安裝了Word,那么用VBS打開Word其實(shí)很簡單,如下:

Set objWord = CreateObject("Word.Application")
objWord.Visible = True

這樣可以以可視的方式打開Word。在MSDN的頁面{http://msdn.microsoft.com/en-us/library/kw65a0we(VS.80).aspx}上我們可以看到在VBS中僅可以調(diào)用兩個Word的子集:

Document object 打開的文檔對象

Selection object 默認(rèn)選擇對象

不過這兩個子集還包含子集,所以可以使用很多功能。Word文檔對象本身是VBA的組件,VBS和VBA又有著明顯的界限,所以雖然VBS可以調(diào)用Word文檔對象,但是具體怎么用又是個未知的領(lǐng)域。幸好從微軟的一些只言片語和一些短篇中能夠大概知道用法。

2. 使用Word實(shí)例打開TXT

在創(chuàng)建一個Word實(shí)例objWord后,我們應(yīng)該用其打開TXT了,如下:

Set objDoc = objWord.Documents.Open("e:/temp/1.txt",Format=5)

現(xiàn)在已經(jīng)打開一個TXT了,F(xiàn)ormat=5即是說TXT是Unicode的:

─────────────────────────────────────────────────────────────────
wdOpenFormatAllWord 6 與 Word 早期版本向后兼容的 Microsoft Office Word 格式。
wdOpenFormatAuto 0 現(xiàn)有格式。
wdOpenFormatDocument 1 Word 格式。
wdOpenFormatEncodedText 5 編碼文本格式。
wdOpenFormatRTF 3 RTF 格式。
wdOpenFormatTemplate 2 用作 Word 模板。
wdOpenFormatText 4 未編碼的文本格式。
wdOpenFormatUnicodeText 5 Unicode 文本格式。
wdOpenFormatWebPages 7 HTML 格式。
wdOpenFormatXML 8 XML 格式。
wdOpenFormatAllWordTemplates 13 Word 模板格式。
wdOpenFormatDocument97 1 Microsoft Word 97 文檔格式。
wdOpenFormatTemplate97 2 Word 97 模板格式。
wdOpenFormatXMLDocument 9 XML 文檔格式。
wdOpenFormatXMLDocumentMacroEnabled 10 啟用了宏的 XML 文檔格式。
wdOpenFormatXMLTemplate 11 XML 模板格式。
wdOpenFormatXMLTemplateMacroEnabled 12 啟用了宏的 XML 模板格式。
─────────────────────────────────────────────────────────────────

由于Word打開TXT后默認(rèn)字體大小為10.5磅,這個值在網(wǎng)頁中是很小的,合適的值是13~15磅,所以需要更改字體大小,同時還需要更改一下默認(rèn)的西方字體,這里選用--Times New Roman:

Set oRange = objDoc.Range()
oRange.Font.Size = "13"
oRange.Font.Name = "Times New Roman"

然后就是首行應(yīng)用“標(biāo)題一”樣式,如果首行為空行那么用編輯器使其不為空,其實(shí)也可以在VBS中實(shí)現(xiàn),不過代碼量增加,這樣就很麻煩不利調(diào)試:

Set oSelection = objWord.Selection
oSelection.HomeKey wdStory, wdMove
oSelection.Style = objWord.ActiveDocument.Styles("標(biāo)題 1")

更改完成后,保存:

objDoc.SaveAs oPath & ".htm", 10
objDoc.Close

下面是wdSaveFormat常數(shù)列表:

─────────────────────────────────────────────────────────────────
wdFormatDocument 0 Microsoft Office Word 格式。
wdFormatDOSText 4 Microsoft DOS 文本格式。
wdFormatDOSTextLineBreaks 5 Microsoft DOS 文本格式,并且保留換行符。
wdFormatEncodedText 7 編碼文本格式。
wdFormatFilteredHTML 10 篩選的 HTML 格式。
wdFormatHTML 8 標(biāo)準(zhǔn) HTML 格式。
wdFormatRTF 6 RTF 格式。
wdFormatTemplate 1 Word 模板格式。
wdFormatText 2 Microsoft Windows 文本格式。
wdFormatTextLineBreaks 3 Windows 文本格式,并且保留換行符。
wdFormatUnicodeText 7 Unicode 文本格式。
wdFormatWebArchive 9 Web 檔案格式。
wdFormatXML 11 可擴(kuò)展標(biāo)記語言 (XML) 格式。
wdFormatDocument97 0 Microsoft Word 97 文檔格式。
wdFormatDocumentDefault 16 Word 默認(rèn)文檔文件格式。對于 Microsoft Office Word 2007,這是 DOCX 格式。
wdFormatPDF 17 PDF 格式。
wdFormatTemplate97 1 Word 97 模板格式。
wdFormatXMLDocument 12 XML 文檔格式。
wdFormatXMLDocumentMacroEnabled 13 啟用了宏的 XML 文檔格式。
wdFormatXMLTemplate 14 XML 模板格式。
wdFormatXMLTemplateMacroEnabled 15 啟用了宏的 XML 模板格式。
wdFormatXPS 18 XPS 格式。
─────────────────────────────────────────────────────────────────

Word實(shí)例退出:

objWord.Quit

3. 完整代碼
復(fù)制代碼 代碼如下:

' ********************************************************************************
' TXT轉(zhuǎn)網(wǎng)頁,僅作轉(zhuǎn)換演示
' Created By 千羽之城 / 2009年9月22日
' http://hi.baidu.com/asnahu
' ********************************************************************************

Dim objWord,objDoc,oRange,oPath

Const wdStory = 6
Const wdMove = 0
Const wdOpenFormatUnicodeText = 5
Const wdFormatFilteredHTML = 10

strFile = "E:/temp/1.txt" ' 該路徑必須是完整路徑

Set objWord = CreateObject("Word.Application")
objWord.Visible = True

Set objDoc = objWord.Documents.Open(strFile, Format=5)
Set oRange = objDoc.Range()
oRange.Font.Size = "13"
oRange.Font.Name = "Times New Roman"

Set oSelection = objWord.Selection
oSelection.HomeKey wdStory, wdMove
oSelection.Style = objWord.ActiveDocument.Styles("標(biāo)題 1")

oPath = Split(strFile,".")(0)

objDoc.SaveAs oPath & ".htm", 10
objDoc.Close

objWord.Quit

如果要實(shí)現(xiàn)批量的多文本轉(zhuǎn)換,那么建議生成一個TXT文件列表,然后用FSO調(diào)用其中內(nèi)容,依次轉(zhuǎn)換即可。

最后:該方法轉(zhuǎn)換的質(zhì)量比較高,但是也附帶一些弊端,那便是垃圾代碼很多,生成的網(wǎng)頁文件很大。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久国产免费 | 露脸各种姿势啪啪的清纯美女 | 99麻豆久久久国产精品免费 | 日韩在线播放第一页 | 午夜男人免费视频 | 欧美成人一区二区三区电影 | 一区小视频 | 欧美成人免费在线视频 | 国产亚洲欧美视频 | 久久精品国产久精国产 | 黄色毛片a级 | 美女久久 | 欧美精品99 | 国产青草视频在线观看视频 | 久久亚洲网 | 国产羞羞视频在线观看 | 免费看国产视频 | 亚洲午夜天堂吃瓜在线 | 久久久久久久亚洲精品 | 国产美女一区二区在线观看 | 福利在线国产 | 欧美国产第一页 | 一区国产在线观看 | 成人精品免费在线观看 | 日日操夜 | 成人片免费视频 | 欧美日本色| av电影免费播放 | 久久久久国产精品久久久久 | 91精品国产福利尤物免费 | 欧美性生交大片 | 国产免费观看a大片的网站 欧美成人一级 | 久久精品中文字幕一区二区三区 | 久久区二区 | 欧美亚洲一级 | gogo全球大胆高清人露出91 | 最新久久免费视频 | 国产69精品久久99不卡免费版 | 国产精品久久久网站 | 欧美成人免费电影 | 国产一区二区三区网站 |