Archive for July, 2009

Loading (.csv) file to listview

Well, somebody is asking me for a code that will load up a (.csv) format to listview. In response to what he wanted, I decided to put it in here based on how I load a .csv file to listview. This article will be in relation to the previous post that I made. I hope this will help. Enjoy!

Private Sub LoadData()
Dim fileLookUp As New OpenFileDialog
fileLookUp.Title = "Get File"
fileLookUp.Filter = "Files (*.csv)|*.csv|All Files (*.*)|*.*"
If fileLookUp.ShowDialog() = Windows.Forms.DialogResult.OK Then
Me.txtFile.Text = fileLookUp.FileName
mFileName = System.IO.Path.GetFileName(Me.txtFile.Text)
mFolder = System.IO.Path.GetDirectoryName(Me.txtFile.Text)
End If

Dim ConnectionString, CommandText As String
Dim conn As OleDb.OleDbConnection
Dim Command As OleDbCommand
Dim myString As String = txtFile.Text
Dim myIndex As Integer = myString.LastIndexOf("\") + 1
myString = myString.Substring(myIndex, myString.Length - myIndex)

Try

ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & mFolder & "\;Extended Properties='text;HDR=Yes'"

CommandText = "select * from " & myString & ""

conn = New System.Data.OleDb.OleDbConnection(ConnectionString)
Command = New System.Data.OleDb.OleDbCommand(CommandText, conn)

conn.Open()

Dim t As New DataTable
' initializing its column to complement on how many fields I want to return in my query command
t.Columns.Add("v7#3")
t.Columns.Add("F2")
t.Columns.Add("F3")

' a method to access read-only the result set.
Dim reader As OleDbDataReader = Command.ExecuteReader()
While reader.Read()
' create new row
Dim r As DataRow = t.NewRow()
r(0) = reader("v7#3")
r(1) = reader("F2")
r(2) = reader("F3")

' add a row to a datatable
t.Rows.Add(r)
End While

' close reader
reader.Close()
' close the connection

conn.Close()

For i As Integer = 0 To t.Rows.Count - 1
Dim li As ListViewItem = ListView1.Items.Add(t.Rows(i)("v7#3").ToString())
li.SubItems.Add(t.Rows(i)("F2").ToString())
li.SubItems.Add(t.Rows(i)("F3").ToString())

Next

Catch ex As Exception
MsgBox("Invalid Format! Please try another.")
End Try
End Sub

Saving Listview as (.csv) file

It was easy for me to save a file on the database but saving a file as a (.csv) format is another issue for me before. Until I discover saving as a (.csv) format is just as simple as saving file on a database. All you just need to do on this is that to call the streamwriter to save the data as (.csv) format. I have here a sample codes below where the data the loaded on my listview was saved as (.csv) format. Hope you enjoy.

Private Sub SaveAsFile()

'They want to do a SaveAs, so find out what they want to name the file

Dim saveFileDialog As SaveFileDialog = New SaveFileDialog()

saveFileDialog.Title = "Save File"

saveFileDialog.Filter = "Files (*.csv)|*.csv|All Files (*.*)|*.*"

saveFileDialog.DefaultExt = "csv"

saveFileDialog.AddExtension = True

If saveFileDialog.ShowDialog(Me) = Windows.Forms.DialogResult.OK Then

filename = saveFileDialog.FileName

End If

Try
Dim csvFileContents As New System.Text.StringBuilder
Dim currentLine As String = String.Empty

'Write out the column names as headers for the csv file.
For columnIndex As Int32 = 0 To 0
currentLine &= (String.Format("mycolumn_name"))
Next

'Remove trailing comma

csvFileContents.AppendLine(currentLine.Substring(0, currentLine.Length))
currentLine = String.Empty

'Write out the data.
For Each item As ListViewItem In ListView1.Items

For Each subItem As ListViewItem.ListViewSubItem In item.SubItems

currentLine &= (String.Format("""{0}"",", subItem.Text))

Next
'Remove trailing comma

csvFileContents.AppendLine(currentLine.Substring(0, currentLine.Length - 1))
currentLine = String.Empty

Next

'Create the file.
Dim sw As New System.IO.StreamWriter(filename)
sw.WriteLine(csvFileContents.ToString)
sw.Flush()
sw.Dispose()
Catch ex As Exception

End Try

End Sub

Introducing Ultidev Cassini

It’s been a big confusion on my mind before since I was thinking on how do I make my web application to run on cd. Well, while searching and looking around for a stand alone web server on the google I saw a Ultidev Cassini that really fits to what really I need and now I was using it. It was really a great product and free for everyone. If you want to explore more on how to used it just visit http://ultidev.com and explore how it works.