找回密码
 加入
搜索
查看: 10664|回复: 15

[AU3基础] 急问win7下无法使用fileopen()创建文件的问题(已解决)

 火.. [复制链接]
发表于 2011-8-9 16:49:52 | 显示全部楼层 |阅读模式
本帖最后由 potato0001 于 2011-9-5 12:36 编辑

同样的代码,XP和2003下均正常
$txt = FileOpen(@ScriptDir & "\" & StringReplace(_NowDate() & "_" & _NowTime(), ":", "") & "测试结果.txt",9)

但在win7下一点反应都没。。。。。。求解决方法,万分感谢!

PS:以管理员身份运行无效。
发表于 2011-8-9 18:01:43 | 显示全部楼层
关了UAC试试
发表于 2011-8-9 18:32:30 | 显示全部楼层
回复 1# potato0001

我这里在win7测试是没有问题的,没有反应也没有报错么?
 楼主| 发表于 2011-8-9 18:39:05 | 显示全部楼层
什么反应都没,也没有产生新文件
发表于 2011-8-9 18:45:06 | 显示全部楼层
回复 4# potato0001


#Include <Date.au3>
$txt = FileOpen(@ScriptDir & "\" & StringReplace(_NowDate() & "_" & _NowTime(), ":", "") & "测试结果.txt",9)
MsgBox(0,"返回值",@error)

看看返回的@error 值是不是0?如果是-1说明有错误发生。
发表于 2011-8-9 23:33:27 | 显示全部楼层
创建文件肯定是没问题的,楼主还是按2楼的想法看看权限的问题
发表于 2011-8-10 10:05:38 | 显示全部楼层
本帖最后由 daiyu116 于 2011-8-10 18:18 编辑

没有调查就没有发言权,我在win7上测试了,肯定不是UAC权限的问题。
      我今天特地找了一个日语win7测试,发现和LZ的现象有些类似,用5楼的代码测试,返回值也正常,是0,而不是-1.但是肯定是有问题。
      于是我加了一条命令,看一下下面这条代码是不是有问题。
      msgbox(0,"1",@ScriptDir & "\" & StringReplace(_NowDate() & "_" & _NowTime(), ":", ""))
      结果返回的值如下:
      
      但是在中文win7上看看返回的是什么值,如下:
      
      知道windows文件命名规则的都知道,里面是不能包含类似 '\'等等字符的,如下:
      
      再看一下帮助中对_NowDate的解释:按PC格式返回当前日期.我想就不用多说了吧。
       因此,解决方式有两种:
      1、修改 “控制面板-区域和语言-格式-日期和时间格式”中的短日期 格式为不包含 \ 等字符的格式,如 yyyy-MM-dd或者yyyy.M.d等等。
      2、修改代码如下:
      

      #Include <Date.au3>
$txt = FileOpen(@ScriptDir & "\" & StringReplace(_NowDate(), "/", "-") & "_" & StringReplace( _NowTime(), ":", "") & "测试结果.txt",9)
MsgBox(0,"1",@error&@ScriptDir & "\" & StringReplace(_NowDate(), "/", "-") & "_" & StringReplace( _NowTime(), ":", ""))
     

     针对LZ的情况,可能不一定是日文win7环境,但是有可能是文件名称格式的问题。因为第一种方法涉及到改动系统设置了,所以推荐用第二种方式测试一下吧。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×

评分

参与人数 2金钱 +10 贡献 +5 收起 理由
oceanwind + 10 谢谢
lynfr8 + 5

查看全部评分

发表于 2011-8-10 10:13:14 | 显示全部楼层
回复 7# daiyu116


   佩服,你的思路令人耳目一新
 楼主| 发表于 2011-8-10 10:31:03 | 显示全部楼层
回复 7# daiyu116

非常感谢,确实没想到是文件名方面的问题,光考虑权限了。等我回家再试试看。
发表于 2011-8-15 21:52:13 | 显示全部楼层
7楼高人哈,我曾经也在CMD下纠结了好久,同样因为日期时间分隔符问题
发表于 2011-8-15 23:28:39 | 显示全部楼层
真还没有注意这个细节问题


我命名文件都是下划线
发表于 2011-8-16 01:02:41 | 显示全部楼层
原来如此。
发表于 2011-9-1 11:01:48 | 显示全部楼层
回复 7# daiyu116


    佩服,思路清晰
 楼主| 发表于 2011-9-5 12:35:48 | 显示全部楼层
刚发现这个帖子还在,之前忘记回了

确实是时间格式问题,感谢daiyu大大
发表于 2012-11-12 09:02:36 | 显示全部楼层
正要使用这个,太用用了。谢谢分享
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 13:50 , Processed in 0.081168 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表