❶ 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