ArtsAutosBooksBusinessEducationEntertainmentFamilyFashionFoodGamesGenderHealthHolidaysHomeHubPagesPersonal FinancePetsPoliticsReligionSportsTechnologyTravel
  • »
  • Technology»
  • Computers & Software»
  • Computer Science & Programming»
  • Programming Languages

Save File Dialog Visual Basic Example

Updated on February 7, 2016

Save File Dialog - Form Layout

In this basic example we are going to save a text file using the file dialog and write text to it from the text box.

To set out this Example create yourself a new project and call it SaveFileDialogExample once loaded make the form bigger and add 1 text box and 2 button controls and a savefileDialog to the form and lay them out as in the picture below. (The full control reference is below stating all the properties I changed for this example)

Once you have added your controls and set up be sure to save your project!

How This Example Works

This example uses a FileDialogControl that opens as a separate form we then filter that to show only .txt (text) files, the user can then enter a file name and save the file under their chosen file name.

The program then writes the text that has been entered in to the text box to the file it has created. We will revisit this example at a later date to incorporate an "auto save" feature in the system allowing the program to automatically update your typing as you go!

Save File Dialog Example Layout

SaveFileDialog Example Code - Explained

The code for this example is quite short however there are a few steps you should take in order to make it more efficient.

First we need to sort out the SaveFileDialog part ready to show it, I have included 3 things here however you can simply just show the dialog.

Code Line 5 uses the filter property allowing me to filter the results display to just .txt files, this ensures that you will only see the same file types displayed (handy say if you are replacing a file)

Code Line 6 uses the FileName property allowing me to pre-populate the file name to ensure it isn't empty (in windows all new files if no name is specified start as Untitled ) this is how it is done.

Code Line 7 Finally shows the SaveFileDialog in order for you to adjust the file name and save the file.

when the user clicks "Save" from within the SaveFileDialog from it returns the full file path to the original code where we can continue to write code to then write the text to the file.

Code Line 9 creates a new instance of the StreamReader and uses the returned file path in order to write to the file.

Code Line 10 tells the StreamReader to write (and in this case we are writing the contents of mainFileTextBox) and this gets written to the saved file on the hard drive.

Code Line 15 closes down the Form and exits the program.

This example is expandable and I urge you to create additional functionality using the above example, in future examples we will come back to this example and modify it to work in a more advanced manner!

Save File Dialog - Full Code

Public Class Form1

    Private Sub saveAsButton_Click(sender As Object, e As EventArgs) Handles saveAsButton.Click

        SaveFileDialog1.Filter = "Text Files |* .txt"
        SaveFileDialog1.FileName = "My Text File"
        SaveFileDialog1.ShowDialog()

        Dim myWriter As New System.IO.StreamWriter(SaveFileDialog1.FileName)
        myWriter.WriteLine(mainTextFile.Text)
        myWriter.Close()
    End Sub

    Private Sub closeButton_Click(sender As Object, e As EventArgs) Handles closeButton.Click
        Me.Close()
    End Sub
End Class

The Save File Dialog Complete

Save File Dialog Example Conclusion

In this example we took a very quick look at the Save File Dialog control in Visual Basic giving you the ability to save text files (or any files you are working with) to the hard drive of your computer and specify a name for them.

I will revisit this example at a later date to add in more functionality allowing you to add times auto save, and a check on exit to ensure you do not accidentally close your file down and lose work.

As always if you like this example please use the Poll below, and if you have any questions or feeback I would love to hear from you!

Give Feedback

Did you find this example useful?

See results

Have Your Say!

    0 of 8192 characters used
    Post Comment

    No comments yet.