System.IO.File.WriteAllText("C:\文件保存路徑\我的文件.txt", TextBox1.Text vbNewLine TextBox2.Text vbNewLine TextBox3.Text vbNewLine TextBox4.Text vbNewLine TextBox5.Text vbNewLine TextBox6.Text)
創(chuàng)新互聯(lián)公司專注于網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站制作、網(wǎng)站開發(fā)。公司秉持“客戶至上,用心服務(wù)”的宗旨,從客戶的利益和觀點(diǎn)出發(fā),讓客戶在網(wǎng)絡(luò)營(yíng)銷中找到自己的駐足之地。尊重和關(guān)懷每一位客戶,用嚴(yán)謹(jǐn)?shù)膽B(tài)度對(duì)待客戶,用專業(yè)的服務(wù)創(chuàng)造價(jià)值,成為客戶值得信賴的朋友,為客戶解除后顧之憂。
如果要加上標(biāo)簽的話,就在textbox1.text的前面加上label1.text
label1.text TextBox1.Text vbNewLine label2.text TextBox2.Text 。。。。 以此類推
把a(bǔ)a.Writeline(TextBox15.Text, TextBox1.Text, TextBox2.Text, TextBox3.Text, TextBox4.Text, TextBox9.Text, TextBox10.Text, TextBox5.Text, TextBox7.Text, TextBox6.Text, TextBox8.Text, Label22.Text, Label23.Text, TextBox16.Text)
改為:
aa.Writeline(TextBox15.TextTextBox1.TextTextBox2.TextTextBox3.TextTextBox4.TextTextBox9.TextTextBox10.TextTextBox5.TextTextBox7.TextTextBox6.TextTextBox8.TextLabel22.TextLabel23.TextTextBox16.Text)
或者
aa.Writeline(TextBox1.Text)
aa.Writeline(TextBox2.Text)
aa.Writeline(TextBox3.Text)
...
您好,在Visual Basic.NET中,是沒有像這樣的文件I/O操作的,一般都是通過(guò)System.IO.StreamReader和System.IO.StreamWriter類,System.IO.BinaryReader和System.IO.BinaryWriter類來(lái)讀寫文件以及利用My.Computer.FileSystem類讀寫文件,利用System.IO.Filestream類來(lái)創(chuàng)建文件,通過(guò)引用Microsoft Scripting Runtime來(lái)執(zhí)行文件(夾)和驅(qū)動(dòng)器的特殊操作,常用的是System.IO.StreamReader和System.IO.StreamWriter類。
例如說(shuō)要讀取一個(gè)文件,我們可以利用System.IO.StreamReader類編寫一個(gè)方法(也就是函數(shù)),但是首先要在當(dāng)前類的開頭添加一個(gè)引用,引用名稱:System.IO,添加引用的代碼如下
Imports System.IO
添加引用之后,就在當(dāng)前類的內(nèi)部創(chuàng)建方法:
Private Function ReadFile(ByVal FileURL As String) As String
Dim sr As StreamReader = New StreamReader(FileURL)
ReadFile = sr.ReadToEnd()
sr.Close()
sr = Nothing
End Function
示例說(shuō)明:
該方法是一個(gè)返回String(字符串)數(shù)據(jù)的函數(shù),F(xiàn)ileURL作為參數(shù)是用來(lái)存放需要訪問(wèn)的文件的URL,當(dāng)然,要獲取一個(gè)文件的URL,就是利用這一句代碼實(shí)現(xiàn)的:
Dim sr As StreamReader = New StreamReader(FileURL)
當(dāng)獲取了URL之后,就要對(duì)文件進(jìn)行讀取操作了,然后將讀取的結(jié)果返回給方法:
ReadFile = sr.ReadToEnd()
讀取文件完畢之后,要對(duì)文件執(zhí)行關(guān)閉操作:
sr.Close()
當(dāng)然別忘了清理資源:
sr = Nothing
StreamReader類可以從流或文件中讀取字符,在創(chuàng)建StreamREader類的對(duì)象時(shí),可以指定一個(gè)流對(duì)象,也可以指定一個(gè)文件URL,創(chuàng)建對(duì)象后就可以調(diào)用他的方法,從流中讀取數(shù)據(jù),其常用方法如下:
Peek:返回下一個(gè)可用字符,但不使用它。
Read:讀取輸入流中下一個(gè)字符或一組字符并移動(dòng)流或文件指針。
ReadBlock:從當(dāng)前流中讀取最大數(shù)量字符并從index開始將數(shù)據(jù)寫入buffer。
ReadLine:從當(dāng)前流中讀取一行字符并將字符作為String返回。
REadToEnd:從流的當(dāng)前位置到末尾讀取流。
Close:關(guān)閉打開的對(duì)象,釋放資源。
注:流,一種新的數(shù)據(jù)格式,這種格式可通過(guò)System.IO命名空間下的類訪問(wèn)。流用Stream類表示,所有的流都是從這個(gè)類中繼承的。流向用戶提供了一個(gè)一般的數(shù)據(jù)視圖,隱藏了操作系統(tǒng)和底層設(shè)備的實(shí)現(xiàn)細(xì)節(jié),所有的流都支持讀寫操作。在打開文件時(shí)將返回對(duì)應(yīng)的流對(duì)象,用戶可以對(duì)流對(duì)象進(jìn)行讀寫操作。
如果要對(duì)文件執(zhí)行按行讀取操作,這時(shí)就會(huì)用到枚舉,這時(shí)候,代碼就要更改一下了:
Private Function ReadFile(ByVal FileURL As String) As String
Dim sr As StreamReader = New StreamReader(FileURL)
For Each fLine As String In sr.ReadToEnd()
Line = sr.ReadLine()
ReadFile = ReadFile fLine
Next sr.ReadLine
sr.Close()
End Function
示例說(shuō)明:
For Each…Next:派生于For…Next循環(huán),用于枚舉一系列對(duì)象中的成員,而這些對(duì)象組成集合,如果集合中至少存在一個(gè)元素,程序就會(huì)靜茹For Each塊執(zhí)行。其格式如下:
For Each 元素 [As 數(shù)據(jù)類型] In 元素集合
[循環(huán)體]
[Exit For]
[循環(huán)體]
Next [元素]
比如:
Dim CountNumber As ULong = 0
Dim FolderName() As String = New String() {" "}
For Each strFolder As String In My.Computer.FileSystem.GetDirectories("C:\")
CountNumber = CountNumber + 1
ReDim Preserve FolderName(1 To CountNumber)
FolderName = strFolder
Next strFolder
注:My.Computer.FileSystem.GetDirectories:主要用來(lái)枚舉指定目錄的子文件夾。
Preserve:主要用來(lái)避免重定義數(shù)組而不損失數(shù)組元素的原有數(shù)據(jù)。
另外,利用My.Computer.FileSystem也可以實(shí)現(xiàn)文件的讀取,其代碼如下:
Dim fpReader As String = My.Computer.FileSystem.ReadAllText("C:\test.txt")
示例說(shuō)明:
定義一個(gè)字符串變量利用My.Computer.FileSystem.ReadAllText來(lái)實(shí)現(xiàn)對(duì)“C:\test.txt”的讀取。
如果是已經(jīng)編碼的文本,則可以使用My.Computer.FileSystem對(duì)象中的ReadAllText方法并提供路徑和文件編碼類型,將文本寫入字符串變量中,例如:
Dim fpReader As String = My.Computer.FileSystem.ReadAllText("C:\test.txt", _
System.Text.Encoding.UTF32)
當(dāng)然,System.Text.Encoding的成員不止一個(gè),它還有如下成員:
System.Text.Encoding.UTF8
System.Text.Encoding.UTF16
System.Text.Encoding.ASCII
System.Text.Encoding.Unicode
這些是常見的成員,也是主要的成員。
另外,利用My.Computer.Filesystem類無(wú)法實(shí)現(xiàn)文件的行操作,還有,如果您的計(jì)算機(jī)未安裝完整的Microsoft.NET Framework Runtime,則無(wú)法實(shí)現(xiàn)這種操作!
寫入文件的操作同樣簡(jiǎn)單,Visual Basic.NET 允許用戶使用StreamWriter來(lái)對(duì)文件寫入內(nèi)容,下面就讓我們來(lái)創(chuàng)建一個(gè)子例程,來(lái)實(shí)現(xiàn)文件的寫入:
Private Sub WriterFile(ByVal FileURL As String, ByVal FileCon As String)
Dim sr As StreamWriter = New StreamWriter(FileURL)
sr.Write(FileCon)
sr.Close()
sr = Nothing
End Sub
示例說(shuō)明:
sr.Write(FileCon):將FileCon寫入文件FileURL之中。
另外,StreamWriter常用方法如下:
WriteLine:向流中寫入一行,后面跟結(jié)束符。
Write:寫入流,向流對(duì)象中寫入字符并移動(dòng)流或文件指針。
Close:關(guān)閉打開的對(duì)象,釋放資源。
附:Visual Basic 6.0文件操作解說(shuō):
打開: Open 文件名 For Input | Output | Append As [#]文件號(hào)
Input打開讀入,文件不存在報(bào)錯(cuò)。Output打開覆蓋寫入,文件不存在則創(chuàng)建。Append打 開追加寫入,文件不存在則創(chuàng)建。
讀: Line Input #文件號(hào), 字符串變量
讀一行數(shù)據(jù)存入字符串變量,數(shù)據(jù)包括空格、Tab、等,不包括回車符和換行符,所以要顯示文件的換行效果,要手動(dòng)添加回車符和換行符(vbCrLf)
Input #文件號(hào), 變量1[, | ;] [變量2]...
這種方式可以存入多個(gè)變量,而且變量類型不限于字符串型。
寫: Print #文件號(hào), 參數(shù)1[, | ;] [參數(shù)2]...
將各參數(shù)逐個(gè)寫入文件。參數(shù)間用逗號(hào)隔開時(shí),文件中相應(yīng)插入多個(gè)空格;用分號(hào)隔開時(shí),插入一個(gè)空格??梢杂肧pc(n)、Tab(n)等進(jìn)行排版。
Write #文件號(hào), 參數(shù)1[, | ;] [參數(shù)2]...
這種寫入方式將自動(dòng)添加界定符,對(duì)不同參數(shù)的類型加以界定。
Visual Basic 6.0文件操作函數(shù):
Seek: Seek(文件號(hào))
返回文件正在訪問(wèn)的位置,返回值為長(zhǎng)整型。對(duì)順序文件和二進(jìn)制文件,返回值以字節(jié)為單位;對(duì)隨機(jī)訪問(wèn)文件,返回值以記錄號(hào)為單位。
Seek: Seek [#]文件號(hào),位置
定位文件到指定位置。位置單位同上所述。
Input: Input (字節(jié)數(shù),[#]文件號(hào))
從文件的訪問(wèn)當(dāng)前位置讀入指定字節(jié)數(shù)的數(shù)據(jù)。僅適用于順序文件和二進(jìn)制文件。
EOF: EOF(文件號(hào))
判斷文件的訪問(wèn)位置是否在文件尾,如果是,返回True,否則,返回False。
LOF: LOF(文件號(hào))
返回文件長(zhǎng)度,單位為字節(jié)。
FileLen: FileLen (文件名)
返回文件名對(duì)應(yīng)文件的長(zhǎng)度,單位是字節(jié)。該函數(shù)取磁盤文件標(biāo)識(shí)中的長(zhǎng)度,即文件打開前的長(zhǎng)度,可以取未打開的文件長(zhǎng)度。
GetAttr: GetAttr (Pathname)
返回指定文件或文件夾的屬性。
FileAttr: FileAttr (文件號(hào))
返回文件號(hào)對(duì)應(yīng)文件的打開方式。
GetDateTime: GetDateTime (Pathname)
返回文件被創(chuàng)建或修改的最后日期和時(shí)間。
Free: FreeFile[(0|1)]
返回未被占用的文件號(hào),F(xiàn)ree或Free(0)返回1~255之間未占用的文件號(hào),F(xiàn)ree(1)返回256~511之間未占用的文件。
Dir: Dir (Pathname [,Attributes])
測(cè)試指定路徑是否有某文件,Attributes附加文件屬性條件,取值vbNormal、vbReadOnly、vbHidden、vbSystem、vbVolume、vbDirectory。
Kill: Kill (文件名)
刪除指定文件,文件名可包含路徑。
FileCopy: FileCopy 源文件,目標(biāo)文件
拷貝文件。
Name: Name 舊文件名 As 新文件名
文件重命名。前后路徑不一致時(shí),操作為移動(dòng)文件并重命名。
MkDir: MkDir path
新建文件夾。
RmDir: Rmdir path
刪除文件夾。
ChDrive: ChDrive Drive
改變當(dāng)前驅(qū)動(dòng)器 ChDrive "D"
CurDir: CurDir [(driver)]
返回當(dāng)前工作路徑,指定driver則返回目標(biāo)驅(qū)動(dòng)器的當(dāng)前工作路徑。
舉例:
'新建文件,并寫入數(shù)據(jù),關(guān)閉
Open "a.txt" For Output As #1
Print #1, "ABCDEFG"; vbCrLf; "HIJK"
Close #1
'打開文件,并全部寫入新文件,關(guān)閉
Open "a.txt" For Input As #2
Open "b.txt" For Output As #3
Dim str As String
While (Not EOF(2))
Line Input #2, str
Print #3, str
Wend
Close
注:關(guān)于Visual Basic 6.0的文件操作資料來(lái)自于
如果您覺得我的回答幫助了您解決難題,別忘了采納哦,如果我的回答未能解決您的問(wèn)題,您可以在互聯(lián)網(wǎng)上尋找更多的解決方案!
預(yù)先準(zhǔn)備三個(gè)圖標(biāo)文件,用于樹型控件中顯示磁盤符號(hào)和文件夾的圖像之用。
1、窗體上添加控件如下:
組合框控件 ComboBox1,樹型控件 TreeView1,列表框控件 ListBox1,圖像列表控件 ImageList1。
選中TreeView1,設(shè)置其ImageList屬性為ImageList1。
2、設(shè)置屬性
選中圖像列表控件 ImageList1,在屬性窗口里,選中屬性Images,單擊三個(gè)小點(diǎn)按鈕,出現(xiàn)圖像集合編輯器窗口,單擊[添加按鈕],一一把準(zhǔn)備好的圖標(biāo)文件進(jìn)行添加,注意先后次序,如果不符合要求可以通過(guò)上下移動(dòng)按鈕重新改變次序。完成后單擊[確定]。
運(yùn)行圖如下:
完整代碼如下:
Imports?System.IO
Public?Class?Form1
Private?Sub?Form1_Load(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?MyBase.Load
'添加系統(tǒng)所有磁盤目錄符號(hào)
For?Each?MyDrive?As?String?In?Environment.GetLogicalDrives()
ComboBox1.Items.Add(MyDrive)
Next
'顯示第一個(gè)磁盤符號(hào)
ComboBox1.Text?=?ComboBox1.Items(0)
End?Sub
'遞歸過(guò)程添加目錄樹
Public?Sub?AddDirectory(ByVal?strFatherPath?As?String,?ByVal?strPath?As?String,?ByVal?nodeFather?As?TreeNode)
Dim?i?As?Integer
Dim?Mynode?As?New?TreeNode
'先添加本目錄
Mynode.Text?=?Strings.Replace(strPath,?strFatherPath??"\",?"",?,?1)
'為節(jié)點(diǎn)指定未被選中時(shí)顯示的圖標(biāo)
Mynode.ImageIndex?=?1
'為節(jié)點(diǎn)指定被選中時(shí)顯示的圖標(biāo)
Mynode.SelectedImageIndex?=?2
nodeFather.Nodes.Add(Mynode)
Application.DoEvents()
Try
Dim?str()?As?String?=?Directory.GetDirectories(strPath)
'遞歸遍歷該目錄的子文件夾
For?i?=?0?To?str.GetUpperBound(0)
AddDirectory(strPath,?str(i),?Mynode)
Next
Catch?ex?As?Exception
Debug.WriteLine(ex.Message)
End?Try
Mynode?=?Nothing
End?Sub
'根據(jù)給出的盤符添加目錄樹
Private?Sub?AddRootDirectory(ByVal?DiscSymbol?As?String)
Dim?Nynode?As?New?TreeNode
'先把磁盤盤符添加到樹中
TreeView1.Nodes.Clear()
Nynode.ImageIndex?=?0
Nynode.Text?=?DiscSymbol
Nynode.SelectedImageIndex?=?-1
TreeView1.Nodes.Add(Nynode)
Dim?i?As?Integer
'獲取磁盤根目錄下的文件夾
Dim?str()?As?String?=?Directory.GetDirectories(DiscSymbol??"\")
For?i?=?0?To?str.GetUpperBound(0)
'調(diào)用遞歸過(guò)程遍歷該文件夾里的所有子文件夾,并添加到樹型控件
AddDirectory(DiscSymbol,?str(i),?Nynode)
Next
Nynode?=?Nothing
End?Sub
Private?Sub?ComboBox1_SelectedIndexChanged(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?ComboBox1.SelectedIndexChanged
'根據(jù)磁盤符號(hào)的變更,顯示根目錄里的文件
ListBox1.Items.Clear()
For?Each?MyFile?As?String?In?System.IO.Directory.GetFiles(ComboBox1.Text)
ListBox1.Items.Add(MyFile)
Next
'根據(jù)磁盤符號(hào)的變更,重新顯示目錄樹
Dim?DiscSymbol?As?String
DiscSymbol?=?Microsoft.VisualBasic.Left(ComboBox1.Text,?Len(ComboBox1.Text)?-?1)
Call?AddRootDirectory(DiscSymbol)
End?Sub
'遞歸過(guò)程根據(jù)子目錄尋找上級(jí)目錄名--從而構(gòu)成完整的目錄路徑
Private?Sub?AllPath(ByVal?ThisNode?As?TreeNode,?ByRef?MyPathName?As?String)
If?ThisNode.Level??1?Then
'該節(jié)點(diǎn)層數(shù)大于1,其父節(jié)點(diǎn)不是磁盤根目錄
MyPathName?=?ThisNode.Parent.Text??"\"??MyPathName
Dim?MyNode?As?TreeNode?=?ThisNode.Parent
Call?AllPath(MyNode,?MyPathName)
Else
'該節(jié)點(diǎn)層數(shù)等于1,其父節(jié)點(diǎn)就是磁盤根目錄
MyPathName?=?ComboBox1.Text??MyPathName
End?If
End?Sub
Private?Sub?TreeView1_AfterSelect(ByVal?sender?As?System.Object,?ByVal?e?As?System.Windows.Forms.TreeViewEventArgs)?Handles?TreeView1.AfterSelect
'為了搜索選中的節(jié)點(diǎn)對(duì)應(yīng)目錄的文件,需要組成全路徑
Dim?MyAllPathName?As?String?=?TreeView1.SelectedNode.Text
Dim?MyNode?As?TreeNode?=?TreeView1.SelectedNode
If?TreeView1.SelectedNode.Level?=?0?Then
'如果選中的是根節(jié)點(diǎn)
MyAllPathName?=?ComboBox1.Text
Else
'如果選中的是非根節(jié)點(diǎn),調(diào)用遞歸過(guò)程組成全路徑
Call?AllPath(MyNode,?MyAllPathName)
MyAllPathName?=?MyAllPathName??"\"
End?If
'根據(jù)路徑,搜索文件名并顯示
ListBox1.Items.Clear()
For?Each?MyFile?As?String?In?System.IO.Directory.GetFiles(MyAllPathName)
ListBox1.Items.Add(MyFile)
Next
End?Sub
End?Class
'窗體上放5個(gè)textBox控件,控件名依次為?TextBox1,?TextBox2,?TextBox3,?TextBox4,?TextBox5
'Button1按鈕為讀文件,Button2按鈕為寫文件
'程序第一運(yùn)行時(shí)先在5個(gè)文本框中輸入相應(yīng)內(nèi)容,點(diǎn)擊“寫文件”,以創(chuàng)建文件
Public?Class?Form1
Private?textBoxArray()?As?TextBox
Private?fileName?As?String
Private?Sub?Form1_Load(ByVal?sender?As?Object,?ByVal?e?As?System.EventArgs)?Handles?Me.Load
Me.textBoxArray?=?New?TextBox()?{Me.TextBox1,?Me.TextBox2,?Me.TextBox3,?Me.TextBox4,?Me.TextBox5}
fileName?=?"csdx.txt"
End?Sub
Private?Sub?Button1_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button1.Click
If?System.IO.File.Exists(fileName)??True?Then
MsgBox("文件不存在!,請(qǐng)先在文本框中輸入數(shù)據(jù),點(diǎn)擊寫文件。")
Exit?Sub
End?If
Dim?line?As?String
Dim?sr?As?IO.StreamReader?=?New?IO.StreamReader(fileName,?System.Text.Encoding.Default)
Dim?I?As?Integer
For?I?=?1?To?5?Step?1
If?sr.EndOfStream?Then?Exit?For
line?=?sr.ReadLine
Me.textBoxArray(I?-?1).Text?=?line
Next?I
sr.Close()
sr?=?Nothing
End?Sub
Private?Sub?Button2_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button2.Click
Dim?sw?As?IO.StreamWriter?=?New?IO.StreamWriter(fileName,?False)
Dim?I?As?Integer
For?I?=?1?To?5
sw.WriteLine(Me.textBoxArray(I?-?1).Text)
sw.Flush()
Next
sw.Close()
sw?=?Nothing
End?Sub
End?Class
Imports?System.IO
Public?Class?Form1
Dim?strFilePath?As?String?=?"C:\1.txt"
Private?Sub?Button1_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button1.Click
Dim?a?As?New?Random
Dim?sw?As?StreamWriter?=?New?StreamWriter(strFilePath,?False)
Randomize()
For?i?=?1?To?100
sw.WriteLine(a.Next(100,?999))
sw.Flush()
Next
sw.Close()
sw?=?Nothing
End?Sub
Private?Sub?Button2_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button2.Click
Dim?sr?As?StreamReader?=?New?StreamReader(strFilePath)
For?i?=?1?To?100
Dim?a?As?Integer?=?Convert.ToInt16(sr.ReadLine)
If?a?Mod?2?=?1?Then
ListBox1.Items.Add(a.ToString)
End?If
Next
sr.Close()
sr?=?Nothing
End?Sub
End?Class
分享文章:vb.net順序文件 vb的順序結(jié)構(gòu)
文章出自:http://muchs.cn/article12/hgiogc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、手機(jī)網(wǎng)站建設(shè)、定制網(wǎng)站、軟件開發(fā)、網(wǎng)站制作、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)