概述<!--#include file="../inc/conn.asp"--><%Call opendata(1)Set rs=server.CreateObject("adodb.recordset")xmlfile=server.mappath("content.xml")Set fso = CreateObject("Scripting.FileSystemObject")Set MyFile = fso.CreateTextFile(xmlfile,True,-1)MyFile.WriteLine("<?xml version=""1.0"" encoding=""utf-8"" standalone=""yes""?>")MyFile.WriteLine("<content Name=""新闻动态"">")rs.open "select * from detail where classid=268 order by updatetime desc",conn,1,1if not rs.eof thendo while not rs.eof MyFile.WriteLine("<article Thumb=""news/thumb4.jpg"" Large =""news/large4.jpg"">") MyFile.WriteLine("<headline>xx竹立方竹艺臻品馆开馆</headline>") MyFile.WriteLine("<date>2010/05/01</date>") MyFile.WriteLine("<copy_intro><![CDATA[竹立方,来自竹林深处的清新气息,来自时代低碳环保的呼唤,来自健康时尚的现代生活理念。]]></copy_intro>") MyFile.WriteLine("<copy_full><![CDATA[ 竹立方,来自竹林深处的清新气息,来自时代低碳环保的呼唤,来自健康时尚的现代生活理念。<br><br> 竹立方——竹艺臻品馆,主要经营竹炭、竹纤维、竹家具、竹工艺品等,与最具实力的厂家合作,提供一手货源,为广大追求现代都市时尚生活的人提供低碳环保的竹产品。<br><br> 一想到竹,便想到那份翠绿。竹子,从竹竿,竹笋到竹纤维,竹地板,竹炭,从以其虚心谦恭的品格,默默无闻地做出贡献。而其独特的品质,自身的特性,发展前景不可限量。<br><br> 来竹立方,感受竹子带来的那份美妙神奇吧!]]></copy_full>") MyFile.WriteLine("<copy_pic><![CDATA[竹立方]]></copy_pic>") MyFile.WriteLine("</article>")rs.movenextloopend ifrs.closeMyFile.WriteLine("</content>")MyFile.Close%> 最近研究asp
生成xml文件,发现如果生成文件里面出现中文的话,xml文件就是
乱码。在网上找了一下,说的都是把页面,xml都设置成统一的编码等等,但是都没有解决问题。原因:后来发现原来是fso的问题:fso不支持utf-8。解决办法:Set MyFile = fso.CreateTextFile(xmlfile,True,-1) 这句的第三个参数就非常重要-1是boolean值的true; 拓展:下面是对CreateTextFile的参数的详细说明:object.CreateTextFile(filename[, overwrite[, unicode]])参数object必选项。应为 FileSystemObject 或 Folder 对象的名称。filename必选项。指明所要创建文件的字符串表达式。overwrite可选项。Boolean 值,指明能否覆盖已有文件。如果文件可以覆盖,则值为 true ,否则为 false。如果忽略,则已有文件不能被覆盖。unicode可选项。Boolean 值,指明文件是否以 Unicode 或 ASCII 文件方式创建。如果文件作为 Unicode 文件创建,则值为 true ,如果作为 ASCII 文件创建,则为 false。如果忽略,则假定为 ASCII 文件。 范例代码:<%xmlfile=server.mappath("media.xml")Set fso = CreateObject("Scripting.FileSystemObject")Set MyFile = fso.CreateTextFile(xmlfile,True,-1)MyFile.WriteLine("<?xml version=""1.0"" encoding=""UTF" & "-8""?>")MyFile.WriteLine("<settings autoRotate=""1"" autoRotateSpeed=""4"" useSubtitle=""0"" useTooltip=""1"" useSecondCaption=""1"" spanX=""400"" spanY=""40"" centerX=""500"" centerY=""300"" distanceValue=""0"" perspectiveRatio=""0.5"" minimumscale="".1"" turningspeed=""4"" rotationKind=""1"" useFocalBlur=""1"" focalBlurValue="".6"" useMotionBlur=""1"" motionBlurValue="".25"" useFadeOnMouseOver=""1"" mouseOverAlphaValue="".5"" useReflection=""1"" reflectionAlphaValue="".5""")MyFile.WriteLine(" />")%><%MyFile.WriteLine("<photos>")%><%MyFile.WriteLine("<photo imageURL=""空调打孔"" linkData=""http://www.kongtiaodakong.com/"" linkType=""frameNumber"" linkTarget=""carousel"" captionText=""陈瑞"" captionText2=""陈瑞"" enableButtonWhenInFront=""1"" />")%><%MyFile.WriteLine("</photos>")%><%MyFile.Close%>
<%
Call opendata(1)
Set rs=server.CreateObject("adodb.recordset")
xmlfile=server.mappath("content.xml")
Set fso = CreateObject("Scripting.fileSystemObject")
Set Myfile = fso.CreateTextfile(xmlfile,True,-1)
Myfile.Writeline("")
Myfile.Writeline("rs.open "select * from detail where classID=268 order by updatetime desc",conn,1,1
if not rs.eof then
do while not rs.eof
Myfile.Writeline(" MyFile.WriteLine("xx竹立方竹艺臻品馆开馆")
MyFile.WriteLine("2010/05/01")
MyFile.WriteLine("")
MyFile.WriteLine("
竹立方——竹艺臻品馆,主要经营竹炭、竹纤维、竹家具、竹工艺品等,与最具实力的厂家合作,提供一手货源,为广大追求现代都市时尚生活的人提供低碳环保的竹产品。
一想到竹,便想到那份翠绿。竹子,从竹竿,竹笋到竹纤维,竹地板,竹炭,从以其虚心谦恭的品格,默默无闻地做出贡献。而其独特的品质,自身的特性,发展前景不可限量。
来竹立方,感受竹子带来的那份美妙神奇吧!]]>")
MyFile.WriteLine("")
MyFile.WriteLine("")
rs.movenext
loop
end if
rs.close
MyFile.WriteLine("")
MyFile.Close
%>
最近研究asp生成xml文件,发现如果生成文件里面出现中文的话,xml文件就是乱码。在网上找了一下,说的都是把页面,xml都设置成统一的编码等等,但是都没有解决问题。
原因:后来发现原来是fso的问题:fso不支持utf-8。
解决办法:Set MyFile = fso.CreateTextFile(xmlfile,-1) 这句的第三个参数就非常重要-1是boolean值的true;
拓展:
下面是对CreateTextFile的参数的详细说明:
object.CreateTextFile(filename[,overwrite[,unicode]])
参数
object
必选项。应为 FileSystemObject 或 Folder 对象的名称。
filename
必选项。指明所要创建文件的字符串表达式。
overwrite
可选项。Boolean 值,指明能否覆盖已有文件。如果文件可以覆盖,则值为 true ,否则为 false。如果忽略,则已有文件不能被覆盖。
unicode
可选项。Boolean 值,指明文件是否以 Unicode 或 ASCII 文件方式创建。如果文件作为 Unicode 文件创建,则值为 true ,如果作为 ASCII 文件创建,则为 false。如果忽略,则假定为 ASCII 文件。
范例代码:
<%
xmlfile=server.mappath("media.xml")
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile(xmlfile,-1)
MyFile.WriteLine("")
MyFile.WriteLine("MyFile.WriteLine(" />")
%>
<%
MyFile.WriteLine("")
%>
<%
MyFile.WriteLine("")
%>
<%
Myfile.Writeline("")
%>
<%
Myfile.Close
%>
总结
以上是内存溢出为你收集整理的Asp生成xml乱码解放方法全部内容,希望文章能够帮你解决Asp生成xml乱码解放方法所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
评论列表(0条)