File.Create(String, Int32) Method in C# with Examples
Last Updated :
21 Jun, 2021
File.Create(String, Int32) is an inbuilt File class method which is used to overwrite an existing file, specifying a buffer size else create a new file if the specified file is not existing.
Syntax:
public static System.IO.FileStream Create (string path, int bufferSize);
Parameter: This function accepts two parameters which are illustrated below:
- path: This is the specified file path.
- bufferSize: This is the specified buffer size.
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 as defined by InvalidPathChars.
- ArgumentNullException: The path is null.
- PathTooLongException: The given path, file name, or both exceed the system-defined maximum length.
- DirectoryNotFoundException: The specified path is invalid (for example, it is on an unmapped drive).
- IOException: An I/O error occurred while creating the file.
- NotSupportedException: The path is in an invalid format.
Below are the programs to illustrate the File.Create(String, Int32) method.
Program 1: Initially, no file is created. Below code itself create a new file file.txt with the specified contents.
CSharp
using System;
using System.IO;
using System.Text;
class GFG {
public static void Main()
{
string file_path = @"file.txt" ;
try {
using (FileStream fs = File.Create(file_path, 1024))
{
byte [] info = new UTF8Encoding( true ).GetBytes( "GeeksforGeeks" );
fs.Write(info, 0, info.Length);
}
using (StreamReader sr = File.OpenText(file_path))
{
string s = "" ;
while ((s = sr.ReadLine()) != null ) {
Console.WriteLine(s);
}
}
}
catch (Exception ex) {
Console.WriteLine(ex.ToString());
}
}
}
|
Executing:
mcs -out:main.exe main.cs
mono main.exe
GeeksforGeeks
After running the above code, above output is shown and a new file file.txt is created with some specified contents shown below:
Program 2: The below shown file file.txt is created before running the below code.
CSharp
using System;
using System.IO;
using System.Text;
class GFG {
public static void Main()
{
string file_path = @"file.txt" ;
try {
using (FileStream fs = File.Create(file_path, 1024))
{
byte [] info = new UTF8Encoding( true ).GetBytes( "GFG is a CS Portal" );
fs.Write(info, 0, info.Length);
}
using (StreamReader sr = File.OpenText(file_path))
{
string s = "" ;
while ((s = sr.ReadLine()) != null ) {
Console.WriteLine(s);
}
}
}
catch (Exception ex) {
Console.WriteLine(ex.ToString());
}
}
}
|
Executing:
mcs -out:main.exe main.cs
mono main.exe
GFG is a CS Portal
After running the above code, the above output is shown, and existing file contents get overwritten.
Share your thoughts in the comments
Please Login to comment...