TheDeveloperBlog.com

Home | Contact Us

C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML

<< Back to VBNET

VB.NET File Handling

Handle files: in the System.IO namespace, use StreamReader and StreamWriter.
File. It is important to have a form of persistent storage. Files are written and read. With the File type, we perform efficient manipulations of files, including reads, writes and appends.
Background. The System.IO namespace deals with files. StreamReader is often the simplest way to read in a text file. And StreamWriter writes out text.
StreamReader. We often employ a using-construct to create a StreamReader object. StreamReader is ideal for looping over the lines in a file. It can also result in less memory usage.StreamReaderStreamWriter

Step 1: We use the StreamReader. It is best to use the Using statement, which provides for system-level cleanup of resources.

Step 2: Here we begin using the StreamReader inside a Do While (True) loop construct.

Step 3: We read in a line with ReadLine() and test to see if the string is Nothing. We exit if it is Nothing.

VB.NET program that uses StreamReader type Imports System.IO Module Module1 Sub Main() ' Step 1: create StreamReader for the file. Using reader As StreamReader = New StreamReader("C:\programs\file.txt") ' Step 2: begin do-loop. Do ' Step 3: call ReadLine. Dim line As String = reader.ReadLine ' ... Exit the loop if Nothing. If line Is Nothing Then Exit Do End If Console.WriteLine(line) Loop End Using End Sub End Module Output Thank you Friend
ReadAllText. We use this function to read an entire text file into a String. Please note that this function is implemented in terms of the other methods in the System.IO namespace.File.ReadAllText

Thus: You could implement a function equivalent to ReadAllText with the StreamReader type.

VB.NET program that uses ReadAllText Imports System.IO Module Module1 Sub Main() Dim value As String = File.ReadAllText("C:\file.txt") Console.WriteLine(value.Length) End Sub End Module Output 40
ReadAllLines. This Function reads in a text file and places each line in the file in a String array. The array is like any other array, and can be converted or modified.

Step 1: We call ReadAllLines with an argument equal to the file name. It places the lines in a String array.

Step 2: A For-Each loop is used on that String, providing each line in the file for usage elsewhere in code.

Info: File.ReadLines is different from ReadAllLines. It reads one line in at a time—this uses less memory.

File.ReadLines
VB.NET program that uses ReadAllLines Imports System.IO Module Module1 Sub Main() ' Step 1: read the file into an array. ' ... Create the required file if needed. Dim array As String() = File.ReadAllLines("file.txt") ' Step 2: use For-Each loop. For Each line As String In array ' Use the line. Dim length As Integer = line.Length Next End Sub End Module
List. Often we use Lists of strings. But the File.ReadAllLines method returns a String array. You can convert the result of File.ReadAllLines into a List with ToList.

Then: You can use each line of the file in a List collection. You can apply all List functions.

List
VB.NET program that uses ToList method on file array Imports System.IO Module Module1 Sub Main() ' Create a list reference variable. ' ... Then read all lines in the file. ' ... Convert the array to a List. Dim list As List(Of String) = File.ReadAllLines("file.txt").ToList Console.WriteLine(list.Count) End Sub End Module Output 5
Line count. There are many ways to acquire the line count of a file. In this example, we see that you can actually load the file into an array, and then get the Length of that array.

Tip: You could instead use StreamReader code above, and then increment an integer on each successful call to the ReadLine method.

VB.NET program that gets line count Imports System.IO Module Module1 Sub Main() ' Get the length of the file. ' ... Not the fastest way to get the line count. Dim length As Integer = File.ReadAllLines("file.txt").Length Console.WriteLine(length) End Sub End Module Output 5
WriteAllLines. It is possible to take a String array and write it as lines to a file. We use File.WriteAllLines, a shared method. In this example, the output file will contain three lines.
VB.NET program that uses WriteAllLines Imports System.IO Module Module1 Sub Main() ' Create an array of three elements. Dim array As String() = New String() {"cat", "dog", "arrow"} ' Write the array to a file. File.WriteAllLines("file.txt", array) End Sub End Module File contents: file.txt cat dog arrow
Overview. We describe many of the File functions available. Some have been omitted. The System.IO namespace provides many other types that are separate from these shared methods.

File.ReadAllBytes: Useful for files not stored as plain text. You can open images or movies with this method.

File.ReadAllLines: Microsoft: "Opens a file, reads all lines of the file with the specified encoding, and closes the file."

File.ReadAllText: Returns the contents of the text file at the specified path as a string. Useful for plain text or settings files.

File.WriteAllBytes: Useful for files such as images that were created or mutated in memory.

File.WriteAllLines: Stores a string array in the specified file, overwriting the contents. Shown in an example.

File.WriteAllText: Writes the contents of a string to a text file. One of the simplest ways to persist text data.

File.AppendAllText: Use to append the contents string to the file at the path. It creates a new file if needed.

Paths. Files found in external storage have file paths. You can use the Path type to specify and determine volumes, folders and file extensions.PathFile Extension

Recursive: Newer versions of the .NET Framework include a method that handles recursive directory file lists. We show an older solution.

Recursive Files
Operations. Many operations are available in the System.IO namespace. A file may be copied. A file info may be received, allowing you to check sizes and dates without using the actual file.File.CopyFile.Exists

FileInfo: It is often necessary to get the size of a file in bytes. The FileInfo type is often needed for this purpose.

File Size
WebClient. With WebClient, we use VB.NET to download files from the Internet. We process them on the local computer. We even write the downloaded data to the local disk.WebClient
Images. Image formats are complex. It is probably best to avoid processing them yourself. With the Image type and its properties, you can read JPG, PNG and other types of files.Image
XML. Data is usually best stored in a structured format. In cases where a database is not necessary, you can use XML files. We use XmlReader and XmlWriter.XmlReaderXmlWriter

XElement: The XElement type provides powerful XML parsing. It can load files from the disk or the network.

XElement
BinaryReader. Computers understand binary data well. But humans don't read it with the same ease. You can use the BinaryReader and BinaryWriter types to effectively load in binary data.BinaryReaderBinaryWriter
Compress. Files can be compressed in the VB.NET language. This requires a newer version of the .NET Framework that includes the System.IO.Compression namespace.Compress

ZipFile: This class can be used to compress an entire directory. We can avoid writing the code ourselves.

ZipFile
Excel, Word. Sometimes, you may need to read data from an Excel spreadsheet or Word DOC into your VB.NET program. Office formats are complex.ExcelWord
A summary. With clear code, such as the Using statement, we read and write (mutate) files. Often we handle text files. But these functions can also act on images or binary data.
© TheDeveloperBlog.com
The Dev Codes

Related Links:


Related Links

Adjectives Ado Ai Android Angular Antonyms Apache Articles Asp Autocad Automata Aws Azure Basic Binary Bitcoin Blockchain C Cassandra Change Coa Computer Control Cpp Create Creating C-Sharp Cyber Daa Data Dbms Deletion Devops Difference Discrete Es6 Ethical Examples Features Firebase Flutter Fs Git Go Hbase History Hive Hiveql How Html Idioms Insertion Installing Ios Java Joomla Js Kafka Kali Laravel Logical Machine Matlab Matrix Mongodb Mysql One Opencv Oracle Ordering Os Pandas Php Pig Pl Postgresql Powershell Prepositions Program Python React Ruby Scala Selecting Selenium Sentence Seo Sharepoint Software Spellings Spotting Spring Sql Sqlite Sqoop Svn Swift Synonyms Talend Testng Types Uml Unity Vbnet Verbal Webdriver What Wpf