File.WriteAllLines(String, IEnumerable<String>, Encoding) Method in C# with Examples
Last Updated :
01 Jun, 2020
File.WriteAllLines(String, IEnumerable<String>, Encoding) is an inbuilt File class method that is used to create a new file by using the specified encoding, writes a collection of strings to the file, and then closes the file.
Syntax:
public static void WriteAllLines (string path, System.Collections.Generic.IEnumerable<String> contents, System.Text.Encoding encoding);
Parameter: This function accepts three parameters which are illustrated below:
- path: This is the specified file where collection of strings are going to be written.
- contents: This is the specified lines to write to the file.
- encoding: This is the specified character encoding to use.
Exceptions:
- ArgumentException: The path is a zero-length string, contains only white space, or one or more invalid characters defined by the GetInvalidPathChars() method.
- ArgumentNullException: Either path, contents, or encoding is null.
- DirectoryNotFoundException: The path is invalid.
- IOException: An I/O error occurred while opening the file.
- PathTooLongException: The path exceeds the system-defined maximum length.
- NotSupportedException: The path is in an invalid format.
- SecurityException: The caller does not have the required permission.
- UnauthorizedAccessException: The path specified a file that is read-only. OR the path specified a file that is hidden. OR this operation is not supported on the current platform. OR the path is a directory. OR the caller does not have the required permission.
Below are the programs to illustrate the File.WriteAllLines(String, IEnumerable, Encoding) method.
Program 1: Before running the below code, a file
file.txt is created whose contents are going to be filtered that are shown below-

Below code, itself creates a new file
gfg.txt which contains the filtered strings.
CSharp
// C# program to illustrate the usage
// of File.WriteAllLines(String,
// IEnumerable<String>, Encoding) method
// Using System, System.IO,
// System.Linq and System.Text namespaces
using System;
using System.IO;
using System.Linq;
using System.Text;
class GFG {
// Specifying a file from where
// some contents are going to be filtered
static string Path = @"file.txt";
static void Main(string[] args)
{
// Reading content of file.txt
var da = from line in File.ReadLines(Path)
// Selecting lines started with "G"
where(line.StartsWith("G"))
select line;
// Creating a new file gfg.txt with the
// filtered contents
File.WriteAllLines(@"gfg.txt", da, Encoding.UTF8);
Console.WriteLine("Writing the filtered collection "+
"of strings to the file has been done.");
}
}
Output:
Writing the filtered collection of strings to the file has been done.
After running the above code, the above output is shown, and a new file
gfg.txt is created shown below-
Program 2: Before running the below code, two files
file.txt and
gfg.txt are created with some contents shown below-

Below code overwrites the file
gfg.txt with the selected contents of the file
file.txt.
CSharp
// C# program to illustrate the usage
// of File.WriteAllLines(String,
// IEnumerable<String>, Encoding) method
// Using System, System.IO,
// System.Linq and System.Text namespaces
using System;
using System.IO;
using System.Linq;
using System.Text;
class GFG {
// Specifying a file from where
// some contents are going to be filtered
static string Path = @"file.txt";
static void Main(string[] args)
{
// Reading the contents of file.txt
var da = from line in File.ReadLines(Path)
// Selecting lines started with "g"
where(line.StartsWith("g"))
select line;
// Overwriting the file gfg.txt with the
// selected string of the file file.txt
File.WriteAllLines(@"gfg.txt", da, Encoding.UTF8);
Console.WriteLine("Overwriting the selected collection"+
" of strings to the file has been done.");
}
}
Output:
Overwriting the selected collection of strings to the file has been done.
After running the above code, the above output is shown, and the file
gfg.txt contents became like shown below-
Similar Reads
C# Tutorial
C# (pronounced "C-sharp") is a modern, versatile, object-oriented programming language developed by Microsoft in 2000 that runs on the .NET Framework. Whether you're creating Windows applications, diving into Unity game development, or working on enterprise solutions, C# is one of the top choices fo
4 min read
Introduction to .NET Framework
The .NET Framework is a software development framework developed by Microsoft that provides a runtime environment and a set of libraries and tools for building and running applications on Windows operating systems. The .NET framework is primarily used on Windows, while .NET Core (which evolved into
6 min read
C# Interview Questions and Answers
C# is the most popular general-purpose programming language and was developed by Microsoft in 2000, renowned for its robustness, flexibility, and extensive application range. It is simple and has an object-oriented programming concept that can be used for creating different types of applications.Her
15+ min read
C# Dictionary
Dictionary in C# is a generic collection that stores key-value pairs. The working of Dictionary is quite similar to the non-generic hashtable. The advantage of a Dictionary is, that it is a generic type. A dictionary is defined under System.Collections.Generic namespace. It is dynamic in nature mean
5 min read
C# List Class
In C#, the List<T> class represents the list of objects that can be accessed by index. It comes under the System.Collections.Generic namespace. List class can be used to create a collection of different types like integers, strings, etc. List<T> class also provides the methods to search,
7 min read
C# Delegates
A delegate is an object which refers to a method or you can say it is a reference type variable that can hold a reference to the methods. It provides a way which tells which method is to be called when an event is triggered. For example, if you click on a Button on a form (Windows Form application),
6 min read
C# .NET Framework (Basic Architecture and Component Stack)
C# (C-Sharp) is a modern, object-oriented programming language developed by Microsoft in 2000. It is a part of the .NET ecosystem and is widely used for building desktop, web, mobile, cloud, and enterprise applications. This is originally tied to the .NET Framework, C# has evolved to be the primary
6 min read
ASP.NET Interview Questions and Answer
ASP.NET is a popular framework by Microsoft for building fast and scalable web applications. It allows developers to create dynamic websites, services, and apps, using server-side code and offering a user-friendly experience. Trusted by companies like Microsoft, Dell, and Accenture, ASP.NET is used
15+ min read
C# Data Types
Data types specify the type of data that a valid C# variable can hold. C# is a strongly typed programming language because in C# each type of data (such as integer, character, float, and so forth) is predefined as part of the programming language and all constants or variables defined for a given pr
7 min read
C# Arrays
An array is a group of like-typed variables that are referred to by a common name. And each data item is called an element of the array. The data types of the elements may be any valid data type like char, int, float, etc. and the elements are stored in a contiguous location. Length of the array spe
8 min read