当前位置: 代码迷 >> ASP >> set filename=fso.createfile("e:\aaa\+"&cstr(sfilename)&"+.xls)报错,未结束的字符串常量,该如何处理
  详细解决方案

set filename=fso.createfile("e:\aaa\+"&cstr(sfilename)&"+.xls)报错,未结束的字符串常量,该如何处理

热度:641   发布时间:2012-02-20 21:18:24.0
set filename=fso.createfile("e:\aaa\+"&cstr(sfilename)&"+.xls)报错,未结束的字符串常量
sfilename   =   Formatdatetime(Now(),   1)
set   filename=fso.createfile( "e:\aaa\+ "&cstr(sfilename)& "+.xls)报错,未结束的字符串常量  


------解决方案--------------------
你自己数一下引号有几个
------解决方案--------------------
正确的写法
sfilename = Formatdatetime(Now, 1)
set filename=fso.createfile( "e:\aaa\+ " & cstr(sfilename) & "+.xls ")
------解决方案--------------------
fso对象有问题,不是这两句的错了
------解决方案--------------------
lz故意这么设置文件名两边有+号吗?
是不是应该这样
sfilename = Formatdatetime(Now, 1)
set filename=fso.createfile( "e:\aaa\ " & cstr(sfilename) & ".xls ")

------解决方案--------------------
有权限吧?
------解决方案--------------------
先直接写个字符串代替时间看看是不是fso的问题!
如果没有问题是不是文件命名不符合WIN的规定啊!
------解决方案--------------------
创建指定的文件名并返回一个 TextStream 对象,可以使用这个对象对文件进行读写。

object.CreateTextFile(filename[, overwrite[, unicode]])
参数
object
必选项。应为 FileSystemObject 或 Folder 对象的名称。
filename
必选项。指明所要创建文件的字符串表达式。
overwrite
可选项。Boolean 值,指明能否覆盖已有文件。如果文件可以覆盖,则值为 true ,否则为 false。如果忽略,则已有文件不能被覆盖。
unicode
可选项。Boolean 值,指明文件是否以 Unicode 或 ASCII 文件方式创建。如果文件作为 Unicode 文件创建,则值为 true ,如果作为 ASCII 文件创建,则为 false。如果忽略,则假定为 ASCII 文件。
说明
下面的代码说明了如何使用 CreateTextFile 方法来创建和打开一个文本文件。

[JScript]
var fso = new ActiveXObject( "Scripting.FileSystemObject ");
var a = fso.CreateTextFile( "c:\\testfile.txt ", true);
a.WriteLine( "This is a test. ");
a.Close();
[VBScript]
Sub CreateAfile
Dim fso, MyFile
Set fso = CreateObject( "Scripting.FileSystemObject ")
Set MyFile = fso.CreateTextFile( "c:\testfile.txt ", True)
MyFile.WriteLine( "This is a test. ")
MyFile.Close
End Sub
如果 overwrite 参数是 false ,或者没有提供这个参数,那么对于已有的 filename 将产生一个错误。
  相关解决方案