Open In App

File.Create(String, Int32, FileOptions) Method in C# with Examples

Last Updated : 20 Jul, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

File.Create(String, Int32, FileOptions) is an inbuilt File class method that is used to overwrite an existing file, specifying a buffer size and options that describe how to create or overwrite the file else create a new file if the specified file is not existing.
Syntax:
 

public static System.IO.FileStream Create (string path, int bufferSize, System.IO.FileOptions options); 
 

Parameter: This function accepts three parameters which are illustrated below:
 

  • path: This is the specified file path.
  • bufferSize: This is the specified buffer size.
  • options: This is one of the FileOptions values that describes how to create or overwrite the file.

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 specified path, file name, or both exceed the system-defined maximum length.
  • DirectoryNotFoundException: The given path is invalid.
  • IOException: An I/O error occurred while creating the file.
  • NotSupportedException: The path is in an invalid format.

Return Value: Returns a new file with the specified buffer size.
Below are the programs to illustrate the File.Create(String, Int32, FileOptions) method.
Program 1: Initially, no file is created. But below code itself create a new file file.txt with the specified contents.
 

C#




// C# program to illustrate the usage
// of File.Create(String, Int32, 
// FileOptions) method
  
// Using System, System.IO and
// System.Text namespaces
using System;
using System.IO;
using System.Text;
  
class GFG {
    public static void Main()
    {
        // Specifying a file
        string myfile = @"file.txt";
  
        // Calling the create() function
        using(FileStream fs = File.Create(myfile, 1024, FileOptions.RandomAccess))
        {
            // Adding the below contents into the file
            Byte[] info = new UTF8Encoding(true).GetBytes("GeeksforGeeks");
            fs.Write(info, 0, info.Length);
        }
  
        // Reading the file contents
        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

After running the above code, above output is shown and a new file file.txt is created with some specified contents shown below:
 

file.txt

Program 2: The below shown file file.txt is created before running the below code. 
 

file.txt

 

C#




// C# program to illustrate the usage
// of File.Create(String, Int32,
// FileOptions) method
  
// Using System, System.IO and
// System.Text namespaces
using System;
using System.IO;
using System.Text;
  
class GFG {
    public static void Main()
    {
        // Specifying a file
        string myfile = @"file.txt";
  
        // Calling the create() function
        using(FileStream fs = File.Create(myfile, 1024, FileOptions.RandomAccess))
        {
            // overwriting the below contents into the file
            Byte[] info = new UTF8Encoding(true).GetBytes("GFG is a CS Portal.");
            fs.Write(info, 0, info.Length);
        }
  
        // Reading the file contents
        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
GFG is a CS Portal.

After running the above code, the above output is shown, and existing file contents get overwritten.
 

 



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads