找回密码
 加入
搜索
查看: 1973|回复: 5

[AU3基础] 关于引号问题,请各位大大求解

  [复制链接]
发表于 2011-8-13 15:44:38 | 显示全部楼层 |阅读模式
$dir=C:\Documents and Settings\Administrator\桌面
$file=aaa
_RunDos("md "&$dir&"\"&$file)

如何正确设置引号,才能创建C:\Documents and Settings\Administrator\桌面\aaa



请各位大大求解  谢谢
发表于 2011-8-13 16:06:35 | 显示全部楼层
其实 _RunDos 就是调用的 RunWait 函数

楼主上面的代码只需要将变量 $dir 和 $file的赋值内容引起来就行了。
大概应该是这样吧!

$dir='C:\Documents and Settings\Administrator\桌面'
$file='aaa'
_RunDos("md "&$dir&"\"&$file)

如果使用 _RunDos函数 当然还少不了#include <Process.au3> 库文件
 楼主| 发表于 2011-8-13 16:14:04 | 显示全部楼层
本帖最后由 x163169x 于 2011-8-13 16:16 编辑

谢谢斑竹帮助,我的环境设置是正常的,关键目录里带有空格  需要双引号修饰

我对AU3不是很熟悉,估计他识别的第一个“"” 或者 “'”作为代码识别符,后面可以随之规律变化  两两相对
表面看是个引号问题,其实还是格式问题。

修改后  格式如下  _RunDos('md "'&$dir&'\'&$file&'"')


再次感谢斑竹帮助
发表于 2011-8-13 20:16:53 | 显示全部楼层
可以这样

        $TEMP=@DesktopCommonDir&"/aaa"
        DirCreate($TEMP)
发表于 2011-8-14 02:15:14 | 显示全部楼层
本帖最后由 user3000 于 2011-8-14 02:38 编辑

你没理解AU3中,单、双引号的使用!
它们是各以最相靠近的两个为一对,作用是一致的,喜欢用哪个就可以用哪个!
dir='C:\Documents and Settings\Administrator\桌面' 也可以书写为 dir="C:\Documents and Settings\Administrator\桌面"
但如果要引用“'”,
应该是“"'"”(2个双引号包住一个单引号)!
如果是引用“"”,
则是是“'"'”(2个单引号包住一个双引号)!

你的命令
_RunDos('md "'&$dir&'\'&$file&'"') (这命令在1楼已经书写正确,但前面2个变量赋值缺少引号!)
是错的,应该是 _RunDos('md ' & $dir & '\' & $file)
空格已经在“md”后面加上了! 
紧接着的变量不能加上任何引号!不然程序将把它看作字符而不是变量了!

还有,要养成个好习惯:连接符和变量间应该像上面一样用空格间开,这利于阅读和排错!
发表于 2011-8-14 12:28:14 | 显示全部楼层
本帖最后由 netegg 于 2011-8-14 12:52 编辑

引号有这么麻烦吗,如果是连续的单双引号就用与之相反的双单引号括起来,如果是单双引号同时且不连续出现, 用相反的双单引号分别括起来并在每组引号(自己加的,不是原有的)中间加&
比如,
"'"  不连续的----'"' & "'" & '"'
"""    连续的---- '"""'
如果原字符串一共是偶数个单双引号就拆成奇数的组,同上面注意一下, 如果&前后的符号一致, 可以省略掉 " & " 或者 ' & ')
"'"' -----  "'" & '  ------ '"' & "'" & '"' & "'"
""""-----  """ & "  ------ '"""' & '"'  ------'""""'

再说的概括点,每一组引号,都拆成一个个的,然后用相反类型的引号括起来,中间加&,然后删除 " & " 或者 ' & '
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-15 01:31 , Processed in 0.076502 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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