我使用VB调试程序的时候发现这么一个问题,当使用Scripting.FileSystemObject写入文件的时候,有时候会报错,但有时又是正常的。 经过调试发现,当写入的内容包含一些特殊的Unicode字符时,FSO会报错,提示“invalid procedure call or argument”,正常的文本则不报错。 经过一番尝试发现了解决方法,就是在写入文件前,使用StrConv函数将文本进行一下转换,转换选项选择vbNarrow,代码如下: strOut = StrConv(strOut, vbNarrow) 这样,非法的Unicode文本就会被转换为问号,FSO写入文件也不报错了。 
|