File.CreateText() Method in C# with Examples
Last Updated :
28 Apr, 2025
File.CreateText() is an inbuilt File class method that is used to overwrite the contents of the existing file with the given UTF-8 encoded text and if the file is not created already, this function will create a new file with the specified contents.
Syntax:
public static System.IO.StreamWriter CreateText (string path);
Parameter: This function accepts a parameter which is illustrated below:
- Path: This is the file where UTF-8 encoded texts are going to be overwritten. The file is created if it doesn't already exist.
Exceptions:
- UnauthorizedAccessException: The caller does not have the required permission. OR the path specified a file that is read-only. OR the path specified a file that is hidden.
- ArgumentException: The path is a zero-length string, contains only white space, or one or more invalid characters.
- ArgumentNullException: The path is null.
- PathTooLongException: The specified path, file name, or both exceed the system-defined maximum length.
- DirectoryNotFoundException: The specified path is invalid i.e, it is on an unmapped drive.
- NotSupportedException: The path is in an invalid format.
Return Value: Returns a StreamWriter that writes to the specified file using UTF-8 encoding.
Below are the programs to illustrate the File.CreateText() method.
Program 1:
Before running the below code, a file file.txt is created with some contents which is shown below:
C#
// C# program to illustrate the usage
// of File.CreateText() method
// Using System, System.IO namespaces
using System;
using System.IO;
class GFG {
// Main method
public static void Main()
{
// Creating a file
string myfile = @"file.txt";
// Overwriting to the above existing file
using(StreamWriter sw = File.CreateText(myfile))
{
sw.WriteLine("GeeksforGeeks");
sw.WriteLine("is a");
sw.WriteLine("computer science");
sw.WriteLine("portal.");
}
// Opening the file for reading
using(StreamReader sr = File.OpenText(myfile))
{
string s = "";
while ((s = sr.ReadLine()) != null) {
Console.WriteLine(s);
}
}
}
}
Executing:
mcs -out:main.exe main.cs
mono main.exe
GeeksforGeeks
is a
computer science
portal.
After running the above code, above output is shown and the existing file file.txt becomes like below:
Program 2: Initially, no file is created and hence below code itself create a file named as file.txt
C#
// C# program to illustrate the usage
// of File.CreateText() method
// Using System, System.IO namespaces
using System;
using System.IO;
class GFG {
// Main method
public static void Main()
{
// Creating a file
string myfile = @"file.txt";
// Checking the existence of above file
if (!File.Exists(myfile)) {
// Creating a new file with below contents
using(StreamWriter sw = File.CreateText(myfile))
{
sw.WriteLine("Geeks");
sw.WriteLine("GFG");
sw.WriteLine("GeeksforGeeks");
}
}
// Opening the file for reading
using(StreamReader sr = File.OpenText(myfile))
{
string s = "";
while ((s = sr.ReadLine()) != null) {
Console.WriteLine(s);
}
}
}
}
Executing:
mcs -out:main.exe main.cs
mono main.exe
Geeks
GFG
GeeksforGeeks
After running the above code, a new file file.txt is created which is shown below: