请教三个数组数据总和问题[已解决]
本帖最后由 m765555 于 2011-5-11 09:35 编辑三个数组相加为什么不成功呢?请大侠们指点下。#include <file.au3>
#Include <Array.au3>
$m1="c:\windows\Temp"
$m2="C:\123"
$m3="C:\WINDOWS\Prefetch"
$lb1=_FileListToArray($m1);数组1
$lb2=_FileListToArray($m2) ;数组2
$lb3=_FileListToArray($m3) ;数组3
_ArrayDisplay($lb1,0) ;显示数组1
_ArrayDisplay($lb2,0) ;显示数组2
_ArrayDisplay($lb3,0) ;显示数组3
;显示三个数组的和
_ArrayAdd($lb1,$lb2)
_ArrayAdd($lb1,$lb3)
_ArrayDisplay($lb1,0)
另外数组获取的文件名字可不可以返回完整路径呢?如图:
新建文件夹和新建文件夹2,这样的文件名,如何返回“c:\window\tem\新建文件夹”这样的完整路径呢, 用_ArrayConcatenate
_ArrayAdd是向数组添加元素 哦,谢谢,我试下 #include <file.au3>
#Include <Array.au3>
$m1="c:\windows\Temp"
$m2=@TempDir
$m3="C:\WINDOWS\"
$lb1=_FileListToArray($m1);数组1
$lb2=_FileListToArray($m2) ;数组2
$lb3=_FileListToArray($m3) ;数组3
_ArrayDisplay($lb1,1) ;显示数组1
$lb1=_ArrayMemeberInsert($lb1,$m1&"\")
_ArrayDisplay($lb1,"1_1") ;显示数组1
_ArrayDisplay($lb2,2) ;显示数组2
$lb2=_ArrayMemeberInsert($lb2,$m2&"\")
_ArrayDisplay($lb2,"2_2") ;显示数组2
_ArrayDisplay($lb3,3) ;显示数组3
$lb3=_ArrayMemeberInsert($lb3,$m3)
_ArrayDisplay($lb3,"3_3") ;显示数组2
;显示三个数组的和
_ArrayConcatenate($lb1,$lb2)
_ArrayConcatenate($lb1,$lb3)
_ArrayDisplay($lb1,"All")
; 数组元素插入字符串 要插入的数组 插入的字符串 方向 0为左 1为右从第几个元素开始。
Func _ArrayMemeberInsert($__Array="",$__InsertString="",$__Direction=0,$__StartMember=1)
If $__Array="" Then Return
For $i=$__StartMember To UBound($__Array)-1 Step 1
Switch $__Direction
Case 0
$__Array[$i]=$__InsertString&$__Array[$i]
Case 1
$__Array[$i]=$__Array[$i]&$__InsertString
Case Else
ExitLoop
EndSwitch
Next
Return $__Array
EndFunc
回复 2# m765555 $a = FileGetLongName(@HomeDrive & "\PROGRA~1\")
msgbox(0,"长文件名", $a)
5楼的代码不错,但是还是没有成功返回数组之和
_ArrayDisplay($lb1,"All")并没有返回数组全部,只是返回了数组1的数据 再次请教各位一下,昨天我试了一下_ArrayConcatenate函数,最后代码如下:
_ArrayConcatenate($lb1,$lb2)
_ArrayConcatenate($lb1,$lb3)
_ArrayDisplay($lb1,0) 这什么这里返回的是总的数组维数,我要的是数组所有数据啊,还是没有搞明白,哎 回复 8# m765555
这不就是你要的效果吗?
#Include <Array.au3>
Global $avArray1 = ['数组1 - 1', '数组1 - 2', '数组1 - 3']
Global $avArray2 = ['数组2 - 1', '数组2 - 2', '数组2 - 3']
_ArrayConcatenate($avArray1, $avArray2)
_ArrayDisplay($avArray1) 再次请教各位一下,昨天我试了一下_ArrayConcatenate函数,最后代码如下:
_ArrayConcatenate($lb1,$lb2)
...
m765555 发表于 2011-5-10 08:22 http://www.autoitx.com/images/common/back.gif
_ArrayConcatenate($lb1,$lb2,1)
串联两个数组.
_ArrayConcatenate(ByRef $avArrayTarget, Const ByRef $avArraySource [, $iStart = 0]))
参数
$avArrayTarget
目标数组
$avArraySource
来源数组
$iStart
[可选]源数组首个值的索引(默认为0) 谢谢各位,问题已解决,郁闷得很,代码和原来一样,不知道什么原因造成的,哎!
页:
[1]