.NET Array Dictionary List String Sub ArrayList Cast Class Console Dates DataTable DateTime Enum File For Format If IndexOf Lambda LINQ Nothing Parse Process Property Regex Replace Select Sort Split StringBuilder Substring


VB.NET: File
Using-keyword

StreamWriter writes data to a text file. It can write lines of text or strings to the file. It is easy to use. Ideally it should be used inside a VB.NET Using statement. This ensures the correct disposal of its resources.

StreamReader
New keyword, constructor invocation

Example. Here we use StreamWriter to create a new file, and then write two lines of text to it along with two newlines. Note how the System.IO namespace is imported at the top. This makes it easier to access StreamWriter.

VB.NET program that uses StreamWriter

Imports System.IO

Module Module1
    Sub Main()
	Using writer As StreamWriter =
	    New StreamWriter("myfile.txt")

	    writer.Write("One ")
	    writer.WriteLine("two 2")
	    writer.WriteLine("Three")
	End Using
    End Sub
End Module

Output file

One two 2
Three
Main method

In the Main entry point, the StreamWriter is instantiated and the file "myfile.txt" is opened for writing. This file is located in the same directory as the application—you can change to path to another location if needed.

Next:The Write call and the two WriteLine calls write the three Strings to the file. The file's contents are listed in the comment.


Append text. Here we use StreamWriter to append lines of text to a file. This is more efficient than reading in the entire file each time, as only the last part of the file needs to be accessed.

VB.NET program that uses StreamWriter to append

Imports System.IO

Module Module1
    Sub Main()
	' Append the first line of text to a new file.
	Using writer As StreamWriter =
	    New StreamWriter("C:\append.txt", True)

	    writer.WriteLine("First line appended; 1")
	End Using

	' Append the second line.
	Using writer As StreamWriter =
	    New StreamWriter("C:\append.txt", True)

	    writer.WriteLine("Second line appended; 2")
	End Using
    End Sub
End Module

Output file

First line appended; 1
Second line appended; 2
Note

The first part of the example opens the file at the absolute path "C:\append.txt". The second argument to the StreamWriter constructor is the Boolean True. This specifies the append overload.

Then:The file is opened again, and a second line is appended to it. The text file contents are shown in the final comment.


For loop. Here we use a For-loop inside of a StreamWriter statement. When you have to loop and add text to a file, you should avoid creating many file handles and simply use the same one. This improves performance.

For Loops
VB.NET program that uses For-loop, StreamWriter

Imports System.IO

Module Module1
    Sub Main()
	' Create new file.
	Using writer As StreamWriter =
	    New StreamWriter("loop.txt")

	    ' Loop through ten numbers.
	    Dim i As Integer
	    For i = 0 To 10 - 1
		' Write number with format string.
		writer.Write("{0:0.0} ", i)
	    Next i
	End Using
    End Sub
End Module

Output file

0.0 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0
Format

The file is opened, and one Windows file handle is created. Then, that same system resource is used to write ten numbers to the file. The Write call in the For-loop specifies a format string.

Then:The format string prints the Integer with one decimal place. All the numbers are written to the same line.

Integer
Programming tip

Encodings. You need to specify the encoding of your target file in the StreamWriter constructor if it is not the default UTF8. Internally, StreamWriter specifies UTF8 by default. The encoding you use depends on what language your program needs.


This section provides information

Functions. StreamWriter in VB.NET has a few more Functions on it, but most of them are not often needed. For example, the Close and Dispose calls are occasionally useful, but not if you use the Using statement.

Tip:If you are not employing the Using construct in VB.NET, make sure to always call Close and Dispose.

Note:The Using statement is implemented with Finally logic. This ensures cleanup always occurs.


The VB.NET programming language

Summary. Here we saw examples of using StreamWriter in VB.NET. This is an easy way to write to files in the .NET platform. Please refer to the documents at this site for StreamReader if you need to read files.