anoniem Geplaatst: 22 mei 2004 Delen Geplaatst: 22 mei 2004 Hoi, Ik loop net tegen het volgende probleem aan. Ik wil een String in een array van strings zetten, maar ik krijg dan de foutmelding: An unhandled exception of type 'System.NullReferenceException' occurred in Space.exe Additional information: Object reference not set to an instance of an object. Mijn code is als volgt:[code:1:9945df7c57] Dim intTemp As Short Dim intTemp2 As Short Dim strTemp As String Dim aTemp() As String Dim fsIn As FileStream = New FileStream("C:\MyFile.txt", IO.FileMode.Open, IO.FileAccess.Read) Dim srHulls As StreamReader = New StreamReader(fsIn) intTemp = 0 intTemp2 = 0 While srHulls.Peek() > -1 strTemp = srHulls.ReadLine If strTemp.Length = 121 Then [color=red]aTemp(intTemp2) = strTemp[/color] intTemp2 += 1 End If End While For intTemp = 0 To aTemp.Length lstDesigns.Items.Add(aTemp(intTemp)) Next [/code:1:9945df7c57]Ditzelfde probleem had ik ook al bij VB 6, en daar was de oplossing [color=blue:9945df7c57]Set[/color:9945df7c57] voor aTemp(intTemp2) = strTemp te zetten. Maar als ik dat hier doe wordt set weggehaald door Visual Studio. Ik gebruik nu VB .NET Ik zelf dacht in eerste instantie dat dit kwam omdat de aTemp(intTemp2) nog geen String was. Maar als ik dan de regel aTemp(intTemp2) = New String toevoeg krijg ik een build error. Kan iemand mij vertellen wat ik hier fout doe? El Loco Quote Link naar reactie
anoniem Geplaatst: 22 mei 2004 Auteur Delen Geplaatst: 22 mei 2004 Je declareert aTemp wel, maar initialiseert hem niet. [code:1:ccf7c1537a]Dim aTemp() As String aTemp = New String(10)[/code:1:ccf7c1537a] Dit geeft de array een grote van 10, als je van te voren niet weet hoeveel items je moet inlezen moet je een ArrayList gebruiken. PS: de code kan wellicht niet helemaal kloppen, ik heb nog nooit gevisualbasict... Quote Link naar reactie
anoniem Geplaatst: 22 mei 2004 Auteur Delen Geplaatst: 22 mei 2004 Kan me vergissen hoor mar bij een stringlist zou je toch de methodes Add of Insert moeten gebruiken om strings toe te voegen? Is dat niet ook zo met arrays in VB? In het andere geval zul je zoals Gates al aangeeft toch eerst de ruimte zelf moeten declareren voordat je deze gebruikt. Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen