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

首頁 > 編程 > ASP > 正文

asp 讀取 utf-8格式文檔并生成utf-8格式文檔的亂碼問題

2020-07-27 13:08:25
字體:
來源:轉載
供稿:網友
今天在對搜索吧的程序進行utf-8修正時,發現生成的utf-8格式文檔存在著亂碼,原來文件

create_html.asp代碼如下: 

復制代碼 代碼如下:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> 
<% 
set objrs=server.createObject("Scripting.FileSystemObject") 
conn=server.mappath("example.xml") 
set Stream=objrs.opentextfile(conn,1,true,-2)   
content=stream.readall 
Response.Write(content) 
stream.close 
%> 

        這段代碼要實現的功能是:從example.xml(utf-8格式)中讀取文字包括中文,然后輸出,但是每次輸出卻都是亂碼,這個問題著實困擾了我很久,后來還是在經典論壇“小韓”“蕭蕭小雨 ”的幫助下解決了,真是感謝他們了。

        或許我一開始就是錯誤的,現在正確的代碼修改后如下,用了“蕭蕭小雨”給的代碼,包括了用讀取的內容生成新的utf-8格式文檔。詳細代碼如下:

復制代碼 代碼如下:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> 
<% Response.CodePage=65001%>  
<% Response.Charset="UTF-8" %>  
<% 
'申明變量 
dim read_path,write_paht,content 
'----讀取文件內容------------------------ 
Function ReadTextFile(filePath,CharSet) 
       dim stm 
       set stm=Server.CreateObject("adodb.stream")  
       stm.Type=1 'adTypeBinary,按二進制數據讀入 
       stm.Mode=3 'adModeReadWrite ,這里只能用3用其他會出錯 
       stm.Open  
       stm.LoadFromFile filePath 
       stm.Position=0 '把指針移回起點 
       stm.Type=2 '文本數據 
       stm.Charset=CharSet 
       ReadTextFile = stm.ReadText 
       stm.Close  
       set stm=nothing  
End Function 

'----寫入文件------------------------ 
Sub WriteTextFile(filePath,fileContent,CharSet) 
       dim stm 
       set stm=Server.CreateObject("adodb.stream")  
       stm.Type=2 'adTypeText,文本數據 
       stm.Mode=3 'adModeReadWrite,讀取寫入,此參數用2則報錯 
       stm.Charset=CharSet 
       stm.Open  
       stm.WriteText fileContent   
       stm.SaveToFile filePath,2 'adSaveCreateOverWrite,文件存在則覆蓋 
       stm.Flush  
       stm.Close  
       set stm=nothing  
End Sub 
'要讀取的文件路徑 
read_path = Server.MapPath("example.xml") 
'要寫入的文件路徑 
write_path = Server.MapPath("example.asp") 
'讀取的文件內容 
content = ReadTextFile(read_path,"utf-8") 
'輸出讀取的文件 
Response.Write(content) 
'開始寫入 
call WriteTextFile(write_path,content,"utf-8") 
%> 


這段代碼相當實用,對于生成utf-8格式靜態頁十分有用,一些必要的解釋我也注明了,需要注意的是:

復制代碼 代碼如下:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> 
<% Response.CodePage=65001%>  
<% Response.Charset="UTF-8" %>  
你的頁面不要忘記這幾行代碼了,否則你讀取后輸出的內容是亂碼。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 广宗县| 长汀县| 平邑县| 诸城市| 嵊州市| 买车| 山西省| 延吉市| 珠海市| 米泉市| 略阳县| 建阳市| 乃东县| 安吉县| 鸡泽县| 军事| 巴楚县| 菏泽市| 乌拉特前旗| 泰安市| 巴彦淖尔市| 濉溪县| 开封市| 汨罗市| 镶黄旗| 疏附县| 农安县| 尚志市| 伽师县| 团风县| 济阳县| 文安县| 赤峰市| 水城县| 黄浦区| 娄烦县| 宜丰县| 古丈县| 辛集市| 寿宁县| 六安市|