I'm looking for some help with an issue I am having. I have multiple text files in a folder. The folder can have an "unlimited" amount of text files in it, although typically 2-150 files.
http://gyazo.com/5f314d1ca374abf9f813914609dd931d (images for this + below)
Each file then contains an "unlimited" (although typically 0-20 lines) amount of data inside it. Line 1 being the "test number" and line 2 being the "test result" - as seen in the image above
My Data Grid View has 3 columns in it [Username, Test Number and Test Result] named (Column_Username, Column_TestNumber, Column_TestResult) - as seen in the image above
When running the current code that I have, there is the correct amount of grids in the data grid view, although all of the cells are empty. http://gyazo.com/e08f9f2f4ab3971695feffe60503e8a9 (image of this)
One thing I don't want to do is change any of my text file/ folder structures, even though I'm aware that it is currently inefficient storage. Although I'm more than happy to use something instead of the lists function if you think there is a better way.
How can I fix this? I'm using VB.Net (visual studios 2013)
If you need any more information, please just ask.
Many thanks.
Imports System.IO
Imports System.ComponentModel
Public Class TeacherMultiResults
Dim LineCount As Integer = 0
Dim Username As String = ""
Dim TestNumber As Integer = 0
Dim TestResult As Integer = 0
Dim ListOfResults = New List(Of TeacherMultiResults)
Private Sub TeacherMultiResults_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim directory As New IO.DirectoryInfo(LoadForm.CurrentDirectory & "\UserResults\") 'selects directory
Dim FileNames As IO.FileInfo() = directory.GetFiles()
Dim Files As IO.FileInfo
For Each Files In FileNames 'list the names of all files in the specified directory
Username = Files.ToString
Username = (Username.Substring(0, Username.Length - 4)) 'removes the .txt from the name
Try
LineCount = File.ReadAllLines(LoadForm.CurrentDirectory & "\UserResults\" & Username & ".txt").Length 'amount of lines in file
If LineCount > 1 Then
Dim Information As New System.IO.StreamReader(LoadForm.CurrentDirectory & "\UserResults\" & Username & ".txt") 'opens file
LineCount = LineCount / 2 'halfs line count
For i = 0 To LineCount - 1
TestNumber = Information.ReadLine() 'reads line to variable
TestResult = Information.ReadLine() 'reads line to variable
i = i + 1 'adds one to i
Dim AddResult = New TeacherMultiResults With {.Username = "hi", .TestNumber = "1", .TestResult = "2"} 'set up a record
ListOfResults.add(AddResult) 'add record to list
Next
Information.Close() 'Close read
Dim bindList = New BindingList(Of TeacherMultiResults)(ListOfResults) 'setup list to bind
Dim bindsrc = New BindingSource 'setup binding source
bindsrc.DataSource = bindList 'bind list to source
DGV_MultiResults.DataSource = bindsrc 'add list to DGV
End If
Catch ex As Exception 'if file won't read
MsgBox(ex.ToString) 'show error
Exit Try
End Try 'end of try
Next 'end of files
End Sub
End Class