瞬間了解VB.NET集合存儲操作
大家都知道大多數程序處理對象集合而不是單個的對象。這里我們就詳細的介紹一下關于VB.NET集合存儲的一些問題吧。對于集合數據,首先創建一個數組(或者是其他類型的集合,比如ArrayList或HashTable),用對象填充,然后一個Serialize方法就可以序列化真個集合,是不是很簡單?下面的例子,首先創建一個有兩個Person對象的ArrayList,然后序列化本身:
VB.NET集合存儲代碼:
- DimFSAsNewSystem.IO.FileStream_
- ("c:\test.txt",IO.FileMode.Create)
- DimBinFormatterAsNewBinary.BinaryFormatter()
- DimPAsNewPerson()
- DimPersonsAsNewArrayList
- P=NewPerson()
- P.Name="Person1"
- P.Age=35
- P.Income=32000
- Persons.Add(P)
- P=NewPerson()
- P.Name="Person2"
- P.Age=50
- P.Income=72000
- Persons.Add(P)
- BinFormatter.Serialize(FS,Persons)
以存儲序列化數據的文件為參數,調用一個BinaryFormatter實例的Deserialize方法,就會返回一個對象,然后把它轉化為合適的類型。下面的代碼反序列化文件中的所有對象,然后處理所有的Person對象:
- FS=NewSystem.IO.FileStream_
- ("c:\test.txt",IO.FileMode.OpenOrCreate)
- DimobjAsObject
- DimPAsPerson(),RAsRectangle()
- Do
- obj=BinFormatter.Deserialize(FS)
- Ifobj.GetTypeIsGetType(Person)Then
- P=CType(obj,Person)
- 'ProcessthePobjext
- EndIf
- LoopWhileFS.Position<FS.Length-1
- FS.Close()
下面的例子調用Deserialize方法反序列化真個集合,然后把返回值轉換為合適的類型(Person):
- FS=NewSystem.IO.FileStream("c:\test.txt",IO.FileMode.OpenOrCreate)
- DimobjAsObject
- DimPersonsAsNewArrayList
- obj=CType(BinFormatter.Deserialize(FS),ArrayList)
- FS.Close()
上述就是一個關與VB.NET集合存儲的講解,希望大家可以記下來作為以后的復習資料。
【編輯推薦】