HomeSearch

VB.NET StreamWriter Example

Use the StreamWriter type from System.IO. Call Write and WriteLine to write data.

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.StreamReaderFile

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.

In Main: The StreamWriter is instantiated and the file "myfile.txt" is opened for writing. You can change the 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.

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

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.

Info: The first part of the example opens the file at the absolute path "C:\append.txt".

Append: The second argument to the StreamWriter constructor is the Boolean True. This specifies the append overload.

Boolean

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

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

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 Each, For

Write: 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.

Format: The Write call in the For-loop specifies a format string. The format string prints the Integer with one decimal place.

Integer
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

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.

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.

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.
Home
Dot Net Perls
© 2007-2020 Sam Allen. Every person is special and unique. Send bug reports to info@dotnetperls.com.