❶ VB如何保存数组到 一个文件里面,下次打开程序还可以读取出来,最好还可以修改
1+回车
2+回车
3+回车
这样保存,然后读取文件内容到一个变量中,用split 变量,vbcrlt即可。
❷ vb选取文件夹下多个文件,如何把文件路径放入数组
窗体上放置一个dirlistbox控件
dim
s
as
string,
t
as
integer
private
sub
dir1_change()
if
ubound(split(dir1.path,
"\"))
<
t
then
dir1.path
=
s
end
sub
private
sub
form_load()
dir1.path
=
app.path
'设置指定操作文件夹,这里是程序所在目录
s
=
dir1.path
t
=
ubound(split(s,
"\"))
end
sub
补充回答:
这个似乎就和你一开始的要求有冲突了。如果这个文件夹是指定文件夹的子文件夹,那么你可以通过dirlistbox随意操作,如果不是,那么根据你的要求,就不能随意打开。如果你的意思是指任意设置指定的目录,那么我在上面的程序中也有说明了,只要给dir1.path赋值即可(比如dir1.path
=
"d:\crt"),方法有多种(包括读取文件中保存的路径名等),但不管用什么方法,都不能够在程序界面上给用户任意选择,否则你开始的那些要求就没意义了。
❸ vb通过数组计算的结果excel 分别存入相应的文件夹
在VB中使用EXCEL,要:
[工程] -- [引用],勾选 Microsoft Excel XX.X Object Library
其中XX.X是看你系统的Office版本
然后代码如下:
Dim excel_App As Excel.Application
Dim excel_Book As Excel.Workbook
Dim excel_sheet As Excel.Worksheet
Set excel_App = CreateObject("Excel.Application") '创建EXCEL对象
Set excel_Book = excel_App.Workbooks.Add '添加工作簿
Set excel_sheet = excel_Book.Worksheets(1) '添加工作页
excel_sheet.Activate
excel_App.DisplayAlerts = False
excel_sheet.Name = "sheet1"
excel_sheet.Range("A30").Value = 100 '设置单元格A30的值为100
If Dir("f:\1", vbDirectory) = "" Then '如果文件夹不存在,就创建文件夹
MkDir "f:\1"
End If
excel_Book.SaveAs "F:\1\1.xls" '保存工作表
MsgBox "F:\1\1.xls 创建成功!"
excel_Book.Close
Set excel_App = Nothing
Set excel_Book = Nothing
Set excel_sheet = Nothing
❹ vb 如何保存数组到文件(具体如下)
Dim n() As String, i As Long
Dim StrOut As String
Private Sub cmdadd_Click()
ReDim Preserve n(i) As String
If i > 0 Then
For j = 0 To UBound(n)
If cboname.Text = n(j) Then
MsgBox ("已有课程,勿重复添加")
Exit Sub
End If
Next
End If
n(i) = cboname.Text
cboname.AddItem n(i)
i = i + 1
End Sub
Private Sub cmdsave_Click()
Open App.Path & "courses.txt" For Output As #1
Print #1, StrOut
Close #1
End Sub
Private Sub picout_Click() '假设你输出到pic用的是这个事件
StrOut = StrOut & Txtid.Text & " " & cboname & " " & cbocredit & vbCrLf
picout.Print Txtid.Text & " " & cboname & " " & cbocredit
End Sub
❺ VB 遍历文件名数组问题
Private Sub Form_Load()
Dim a As String
Dim s As Integer
a = Dir("d:\*.txt")
Do While a <> ""
s = s + 1
a = Dir
Loop
Me.Caption = s
End Sub
❻ vb获取一个目录下所有文件并存储到一个数组,包括子目录
首先我是将文件显示做了区分:文件夹名称显示folderlist(),文件名称显示filelist():
PrivateFunctionfolderlist(pathnameAsString,treeflagAsInteger)'treeflag:0列表1树形2树形展开
'文件夹数和名称
DimsfAsString
sf=Dir(pathname,vbDirectory)'获取第一个目录名
foldernum=0
DoWhilesf<>""
'跳过当前的目录及上层目录
Ifsf<>"."Andsf<>".."Then
If(GetAttr(pathname+sf)AndvbDirectory)=vbDirectoryThen
Iftreeflag=0Then
Text2=Text2&sf&vbCrLf'如果它是一个目录,将其名称添加到列表
ElseIftreeflag=1Then
Text2=Text2&Treestr&sf&vbCrLf
ElseIftreeflag=2Then'树形展开的时候,需要了解子目录,所以还需进行递归调用
Text2=Text2&Treestr&sf&vbCrLf
folderlistpathname+sf,treeflag
filelistpathname+sf,treeflag
EndIf
foldernum=foldernum+1'统计文件夹数目
EndIf
EndIf
sf=Dir()'查找下一个目录
Loop
Iftreeflag=0Then
Iffoldernum<>0Then
Text2=Text2&vbCrLf&"======共有"&foldernum&"个文件夹======"&vbCrLf&vbCrLf
Else
Text2=Text2&"======无子目录======"&vbCrLf&vbCrLf
EndIf
ElseIffoldernum<>0Then
Text2=Text2&Nullstr&vbCrLf&Nullstr&vbCrLf
EndIf
EndFunction
PrivateFunctionfilelist(pathnameAsString,treeflagAsInteger)'0列表1树形2树形展开
'文件数和名称
DimaAsString
a=Dir(pathname&"*.*")
filenum=0
DoWhilea<>""
Iftreeflag=0Then
Text2=Text2&a&vbCrLf
Else
Text2=Text2&Treestr&a&vbCrLf
EndIf
filenum=filenum+1'统计文件数目
a=Dir
Loop
Iftreeflag=0Then
Iffilenum<>0Then
Text2=Text2&"======共有"&filenum&"个文件======"
Else
Text2=Text2&"======无文件信息======"
EndIf
EndIf
EndFunction