File.Create(String, Int32)是一個內置的 File 類方法,用於覆蓋現有文件,指定緩衝區大小,如果指定的文件不存在,則創建一個新文件。
用法:
public static System.IO.FileStream Create (string path, int bufferSize);
參數:此函數接受兩個參數,如下所示:
- path: This is the specified file path.
- bufferSize: This is the specified buffer size.
異常:
- UnauthorizedAccessException:調用者沒有所需的權限。或路徑指定了隻讀文件。或路徑指定了隱藏的文件。
- ArgumentException:路徑是一個長度為零的字符串,隻包含空格,或者一個或多個由 InvalidPathChars 定義的無效字符。
- ArgumentNullException:路徑為空。
- PathTooLongException:給定的路徑、文件名或兩者都超過了 system-defined 的最大長度。
- DirectoryNotFoundException:指定的路徑無效(例如,它位於未映射的驅動器上)。
- IOException:創建文件時發生 I/O 錯誤。
- NotSupportedException:路徑格式無效。
下麵是說明 File.Create(String, Int32) 方法的程序。
程序1:最初,沒有創建文件。下麵的代碼本身使用指定的內容創建一個新文件 file.txt。
C#
// C# program to illustrate the usage
// of File.Create(String, Int32) 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 path
string file_path = @"file.txt";
try {
// Creating a new file with below
// specified contents
using(FileStream fs = File.Create(file_path, 1024))
{
// Adding some info 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(file_path))
{
string s = "";
while ((s = sr.ReadLine()) != null) {
Console.WriteLine(s);
}
}
}
catch (Exception ex) {
Console.WriteLine(ex.ToString());
}
}
}
執行:
mcs -out:main.exe main.cs mono main.exe GeeksforGeeks
運行上述代碼後,將顯示以上輸出,並創建一個新文件file.txt,其中包含一些指定的內容,如下所示:
程序2:下麵顯示的文件file.txt是在運行以下代碼之前創建的。
C#
// C# program to illustrate the usage
// of File.Create(String) 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 path
string file_path = @"file.txt";
try {
// Overwriting the above file contents
using(FileStream fs = File.Create(file_path, 1024))
{
// Adding some info 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(file_path))
{
string s = "";
while ((s = sr.ReadLine()) != null) {
Console.WriteLine(s);
}
}
}
catch (Exception ex) {
Console.WriteLine(ex.ToString());
}
}
}
執行:
mcs -out:main.exe main.cs mono main.exe GFG is a CS Portal
運行以上代碼後,將顯示以上輸出,並且現有文件內容將被覆蓋。
相關用法
- C# Buffer.BlockCopy(Array, Int32, Array, Int32, Int32)用法及代碼示例
- C# Array.BinarySearch(Array, Int32, Int32, Object)用法及代碼示例
- C# Array.BinarySearch(Array, Int32, Int32, Object, IComparer)用法及代碼示例
- C# Int32.GetTypeCode用法及代碼示例
- C# Int32.GetHashCode用法及代碼示例
- C# Int32.CompareTo用法及代碼示例
- C# Int32.Equals用法及代碼示例
- C# File.Create(String, Int32, FileOptions, FileSecurity)用法及代碼示例
- C# Int32.Parse(String)用法及代碼示例
- C# File.Create(String, Int32, FileOptions)用法及代碼示例
- C# Int32.MaxValue用法及代碼示例
- C# Int32.MinValue用法及代碼示例
- C# Char.ConvertToUtf32(String, Int32)用法及代碼示例
- C# Char.ConvertFromUtf32(Int32)用法及代碼示例
- C# Char.IsControl(String, Int32)用法及代碼示例
- C# Char.IsHighSurrogate(String, Int32)用法及代碼示例
- C# Char.IsSurrogate(String, Int32)用法及代碼示例
- C# Char.IsLowSurrogate(String, Int32)用法及代碼示例
- C# Char.IsSurrogatePair(String, Int32)用法及代碼示例
- C# Int32和UInt32的區別用法及代碼示例
注:本文由純淨天空篩選整理自Kanchan_Ray大神的英文原創作品 File.Create(String, Int32) Method in C# with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。