IT俱乐部 ASP.NET asp createTextFile生成文本文件支持utf8

asp createTextFile生成文本文件支持utf8

但很多时候为了方便,我们会自定义生成文本文件的函数

Function createTextFile(Byval content,Byval fileDir,Byval code)
	dim fileobj,fileCode : fileDir=replace(fileDir, "", "/")
	if isNul(code) then fileCode=Charset else fileCode=code
	call createfolder(fileDir,"filedir")
	if fileCode="utf-8" then
		on error resume next
		With objStream
			.Charset=fileCode:
			.Type=2:
			.Mode=3:
			.Open:
			.Position=0
			.WriteText content:
			.SaveToFile Server.MapPath(fileDir), 2
			.Close
		End With
	else
		on error resume next:err.clear
		set fileobj=objFso.CreateTextFile(server.mappath(fileDir),True)
		fileobj.Write(content)
		set fileobj=nothing
	end if
	if Err Then err.clear :createTextFile=false : errid=err.number:errdes=err.description:Err.Clear : echoErr err_09,errid,errdes else createTextFile=true
End Function
Sub echoErr(byval str,byval id, byval des) 

 dim errstr,cssstr
		cssstr=""
 cssstr=cssstr&""
 errstr=cssstr&"
提示:【"&str&"】
错误号:"&id&"
错误描述:"&des&"
返回上一页 返回首页
Powered by AspCms2.0
" cssstr="" die(errstr) End Sub Function createFolder(Byval dir,Byval dirType) dim subPathArray,lenSubPathArray, pathDeep, i on error resume next dir=replace(dir, "", "/") if trim(sitePath) = "" then pathDeep = "/" else pathDeep = sitePath pathDeep = server.MapPath(pathDeep) dir=replace(server.mappath(dir), pathDeep, "") subPathArray=split(dir, "") select case dirType case "filedir" lenSubPathArray=ubound(subPathArray) - 1 case "folderdir" lenSubPathArray=ubound(subPathArray) end select for i=0 to lenSubPathArray if trim(subPathArray(i)) "" then pathDeep=pathDeep&""&subPathArray(i) if not objFso.FolderExists(pathDeep) then objFso.CreateFolder pathDeep end if next if Err Then createFolder=false : errid=err.number:errdes=err.description:Err.Clear : echoErr err_10,errid,errdes else createFolder=true End Function

使用方法

createTextFile content,htmlfilepath,””

content就是内容,filepath就是文件路径

createTextFile “内容”,”/article/11/22/3.htm”,””

ASP生成UTF-8编码的代码

方法一:createtextfile生成文件方法

function WriteToFile(FileName,FileContent)
set fso=server.createobject("scripting.filesystemobject")
set fp=fso.createtextfile(server.mappath(FileName),,True)
fp.write(FileContent)
end function

方法二:ADODB.Stream生成文件方法 支持utf8,最上面的函数就包括下面的两种方法

Set ccObjStream = Server.CreateObject("ADODB.Stream")
With ccObjStream
.Type = 2
.Mode = 3
.Open
.Charset = "utf-8"
.Position = ccObjStream.Size
.WriteText 要生成的内容
.SaveToFile 要生成文件路径和文件名,2
.Close
End With

CreateTextFile 方法
创建指定文件并返回 TextStream 对象,该对象可用于读或写创建的文件。

object.CreateTextFile(filename[, overwrite[, unicode]])

参数
object

必选项。应为 FileSystemObject 或 Folder 对象的名称。

filename

必选项。字符串表达式,指明要创建的文件。

overwrite

可选项。Boolean 值指明是否可以覆盖现有文件。如果可覆盖文件,该值为 True;如果不能覆盖文件,则该值为 False 。如果省略该值,则不能覆盖现有文件。

unicode

可选项。Boolean 值指明是否以 Unicode 或 ASCII 文件格式创建文件。如果以 Unicode 文件格式创建文件,则该值为 True;如果以 ASCII 文件格式创建文件,则该值为 False。如果省略此部分,则假定创建 ASCII 文件。 

以上就是asp createTextFile生成文本文件支持utf8的详细内容,更多关于asp createTextFile的资料请关注IT俱乐部其它相关文章!

本文收集自网络,不代表IT俱乐部立场,转载请注明出处。https://www.2it.club/code/asp-net/2717.html
上一篇
下一篇
联系我们

联系我们

在线咨询: QQ交谈

邮箱: 1120393934@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部