国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > ASP > 正文

Asp 編碼互轉的研究和實現代碼

2024-05-04 11:08:54
字體:
來源:轉載
供稿:網友
在2009年4月11日的時候,我已經把代碼實現給做好了,但是一直沒有時間去寫這篇文章,所以今天抽空就把這篇文章給補上了,也為我們廣大asp愛好者遞上一份美羹,填補了asp編碼轉換的空缺。
 
 
 
文章背景: 
某天,我的一個同事給我看了CSDN上面的一篇關于編程語言排行榜的文章,里面我看到VB還是排名很不錯的,我就說,asp(vbscript)確實挺不錯。結果他就反駁我,說asp不好,很多東西很難實現。我說比如哪些東西?我開發了幾年的asp都沒有發現很難實現的東西,除非是屬于非腳本語言范圍內的,比如多線程的應用(當然,asp也可以模擬實現多線程任務)等。結果他說了什么多線程,還有編碼轉換等,說自己曾經為了轉換編碼費了很大精力卻沒有成功過,所以覺得asp太弱。聽到這樣的話,我們就知道他的編程底子還不夠扎實,并且對asp認識也是非常有限的(并且后來說自己asp幾個常用的基本對象都不知道,也沒有用過,我差點被氣暈過去——連這都沒有用過,還跟我談asp很弱,看來...白長著么大了,連“沒有根據,沒有發言權”都不懂!呵呵...),所以,我一氣之下,在那個周末就把asp編碼互轉的問題給實現了,讓他見識見識什么是asp,竟然這么看不起asp,想著就火大!當然,我的這個研究也同時填補了到目前為止關于asp開發中編碼轉換研究的空白! 

現在,我們開始轉入正題,首先,我們了解一下編碼轉換的過程,一段文字的編碼如果要轉換,我們就要知道當前文字所對應的編碼集,然后用對應的編碼集去讀取,這是編碼正確被轉換的前提(如果這步弄錯了,那么轉換出來的就會是一連串亂碼)!好了,找對了當前編碼,并且正確讀取出來了以后,我們就可以用設定好目標編碼的Stream對象去保存這個內容到指定文件中了,到這里我們的編碼轉換就成功了! 
下面我們來看一下asp編碼轉換的具體代碼實現: 
復制代碼代碼如下:

'轉換編碼 content 要轉換編碼的內容, cset 目標編碼, dest 目標文件絕對路徑 
Function TransferCharSet(content, cset, dest) 
Dim Objstream 
Set Objstream = Server.CreateObject("adodb.stream") 
objstream.Mode =3 
objstream.Charset = cset 
objstream.Type = 2 
objstream.Open 
objstream.WriteText content 
objstream.Position = 0 
objstream.SaveToFile dest,2 
objstream.Close 
set objstream = nothing 
End Function 
'用對應編碼讀取指定內容 
Function getcontent(path) 
Dim Objstream 
Set Objstream = Server.CreateObject("Adodb.Stream") 
objstream.Charset = GetCharSetName(path) 
objstream.Type = 2 
objstream.Mode =3 
'objstream.Charset = code 
objstream.Open 
Objstream.LoadFromFile path 
objstream.Position = 0 
getcontent = objstream.ReadText 
objstream.Close 
set objstream = nothing 
End Function 
'取得指定內容的編碼名稱 
Function GetCharSetName(path) 
Set objstream=server.createobject("Adodb.Stream") 
objstream.Type=1 
objstream.mode=3 
objstream.open 
objstream.Position=0 
objstream.loadfromfile path 
bintou=objstream.read(2) 
If AscB(MidB(bintou,1,1))=&HEF And AscB(MidB(bintou,2,1))=&HBB Then 
GetCharSetName="utf-8" 
ElseIf AscB(MidB(bintou,1,1))=&HFF And AscB(MidB(bintou,2,1))=&HFE Then 
GetCharSetName="unicode" 
Else 
GetCharSetName="gb2312" 
End If 
objstream.close 
Set objstream=nothing 
End Function 

好了,經過這樣一段代碼,我們的轉換工作就完成了!希望這篇文章能給asp愛好者以及其他語言愛好者帶來一些幫助和啟發。 
最后,我想說的是,編程語言的學習和使用并不難,重要的是自己多動腦筋,想想自己需要的功能怎么去實現,而不是怨天尤人,說這個語言太弱了之類的話。 
好了,祝大家編程并快樂著,關于asp的編碼轉換先寫到這里,以后我還會推出更精彩的個人原創文章,謝謝大家! 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宁阳县| 忻州市| 徐水县| 金华市| 名山县| 班玛县| 信阳市| 将乐县| 邢台县| 自贡市| 保亭| 青浦区| 大足县| 宕昌县| 长丰县| 高尔夫| 手游| 合川市| 阳信县| 岱山县| 诏安县| 天台县| 贵州省| 淮阳县| 青河县| 辽中县| 理塘县| 辛集市| 安乡县| 镇康县| 屏山县| 呼图壁县| 镇赉县| 抚远县| 绩溪县| 德江县| 涞水县| 穆棱市| 榆林市| 阳朔县| 高台县|