给你一个提示吧!呵呵,剩下的要自己思考哦!
成都创新互联网站建设公司是一家服务多年做网站建设策划设计制作的公司,为广大用户提供了成都网站设计、网站建设,成都网站设计,1元广告,成都做网站选成都创新互联,贴合企业需求,高性价比,满足客户不同层次的需求一站式服务欢迎致电。
Path:是初始目录的路径
Private Sub WriteArray(ByVal Path As String)
'写入数组代码在这里,直接将Path写到数组就行了。
Dim dir As New IO.DirectoryInfo(Path)
For Each d As IO.DirectoryInfo In dir.GetDirectories
WriteArray(d.FullName) '递归
Next
End Sub
如果子目录较多那么递归会比较费时间,在调用递归前加入application.doevent就行了,这样在应对大递归时不会死机。
至于数组嘛使用 arraylist 最好了。
回答补充:
把递归去掉就行了啊!
IO.Directory.GetDirectories("文件夹") '获取文件夹中的所有子文件夹路径。
IO.Directory.GetFiles("文件夹") '获取文件夹下所有文件的路径。
'子文件夹的子文件夹,用递归;
vb.net:
Dim
path
=
System.IO.Directory.GetFiles("D:\Log\abc",
"*.txt",
SearchOption.AllDirectories):搜索该路径下的所有txt类型的目录及子目录
path.AddRange(path)
Dim
_RecordInfo
As
String
Dim
_Reader
As
StreamReader
_Reader
=
New
StreamReader(file,
System.Text.Encoding.Default):'以Default编码的形式读取file文件(文件写入的编码要与读取的编码一致)
Private Sub GetChilren(ByVal Subject As String)
For Each i As String In My.Computer.FileSystem.GetDirectories(Subject)
GetChilren(i)'在这里递归
Next
For Each i As String In My.Computer.FileSystem.GetFiles(Subject)
'''txt,用全局变量或参数类数组、泛型、控件保存每个i
Next
End Sub
for each是用来简化for的,但你这种写法有点奇怪,一般没这样用的,通常的用法是
dim a() as string={....}
dim str as string '定义临时变量,它的类型与你数组中元素类型一致
For Each str In a
MessageBox.Show(str)
Next
你上面代码中,a就是一个3个元素的数组,从a[0]到a[2], 用for each的时候,就会遍历你的a数组,上面的代码相当于
for i=0 to a.Length-1
MessageBox.Show(a(i))
next
as3遍历对象所有属性的方法(包含Flex)
1、所有对象,包括静态属性和动态属性
ObjectUtil.getClassInfo(this._arr[0]).properties as Array
2、仅能遍历静态属性
var o:Object=new Object();
o.name='mm';
o.type='size';
o.size='32D';
for (var i:String in o)
{
trace(i);
trace(o[i]);
}
3、可以遍历所有属性,需要解析XML,比较麻烦
flash.utils.describeType
var oXml:XML=describeType(o);