在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ C#/ C#文件(I/O)
C#屬性(Properties)
C#與Java比較
C#方法
C#枚舉
C#關(guān)鍵字
C# StreamReader類
C#不安全代碼
C#文件(I/O)
C#匿名方法
C#線程同步
C# Thread類
C#主線程
C#數(shù)據(jù)類型
C# FileStream類
C#預(yù)處理指令
C#繼承
C#循環(huán)
C#決策結(jié)構(gòu)
C#集合
C#反射
C#類型轉(zhuǎn)換
C#泛型
C# StringReader類
C#歷史
C#運(yùn)算符重載
C#屬性
C#線程實(shí)例:Sleep()方法
C#線程示例:優(yōu)先級
C#線程實(shí)例:Join()方法
C# BinaryReader類
C#類
C#索引器
C# BinaryWriter類
C#序列化
C#常量和文字
C#程序結(jié)構(gòu)
C#封裝
C#事件
C#可空類型(nullable)
C#基本語法
C#異常處理
C#教程
C#接口
C# System.IO命名空間
C#線程命名實(shí)例
C# StringWriter類
C#線程實(shí)例
C#數(shù)組
C#正則表達(dá)式
C#命名空間
C#反序列化
C#與C++比較
C# TextWriter類
C#多線程
C#字符串
C#是什么?
C#變量
C# FileInfo類
C#線程實(shí)例:Abort()方法
C#結(jié)構(gòu)體
C#運(yùn)算符
C#入門程序
C#多線程生命周期
C# TextReader類
C# DirectoryInfo類
C#委托

C#文件(I/O)

文件是存儲在具有特定名稱和目錄路徑的磁盤中的數(shù)據(jù)的集合。當(dāng)文件打開以進(jìn)行讀取或?qū)懭霑r,它將成為流。

流基本上是通過通信路徑的字節(jié)序列。有兩個主要流:輸入流和輸出流。輸入流用于從文件讀取數(shù)據(jù)(讀取操作),輸出流用于寫入文件(寫入操作)。

C# I/O類

System.IO命名空間具有各種類,用于執(zhí)行許多文件操作,例如:創(chuàng)建和刪除文件,從文件讀取或?qū)懭胛募?,關(guān)閉文件等。

下表顯示了System.IO命名空間中的一些常用的非抽象類:

I/O類 描述
BinaryReader 從二進(jìn)制流中讀取原始數(shù)據(jù)。
BinaryWriter 以二進(jìn)制格式寫入原始數(shù)據(jù)。
BufferedStream 一個字節(jié)流的臨時存儲。
Directory 有助于操縱目錄結(jié)構(gòu)。
DirectoryInfo 用于對目錄執(zhí)行操作
DriveInfo 提供驅(qū)動器的信息。
File 用于幫助操縱文件。
FileInfo 用于對文件執(zhí)行操作。
FileStream 用于讀取和寫入文件中的任何位置。
MemoryStream 用于隨機(jī)訪問存儲在內(nèi)存中的流式數(shù)據(jù)。
Path 執(zhí)行路徑信息的操作。
StreamReader 用于從字節(jié)流讀取字符。
StreamWriter 用于將字符寫入到流中。
StringReader 用于從字符串緩沖區(qū)讀取。
StringWriter 用于寫入字符串緩沖區(qū)。

FileStream類

System.IO命名空間中的FileStream類有助于讀取,寫入和關(guān)閉文件。這個類派生自抽象類Stream

需要創(chuàng)建一個FileStream對象來創(chuàng)建一個新文件或打開現(xiàn)有文件。創(chuàng)建FileStream對象的語法如下:

FileStream <object_name> = new FileStream( <file_name>, <FileMode Enumerator>, <FileAccess Enumerator>, <FileShare Enumerator>);

例如,創(chuàng)建一個FileStream對象F來讀取一個名稱為sample.txt的文件,如下所示:

FileStream F = new FileStream("sample.txt", FileMode.Open, FileAccess.Read, FileShare.Read);
  • FileMode - FileMode枚舉器定義打開文件的各種方法。FileMode枚舉器的成員有:

    • Append:它打開一個現(xiàn)有的文件,并將光標(biāo)放在文件的最后,或者如果該文件不存在則創(chuàng)建此文件。
    • Create:它創(chuàng)建一個新文件。
    • CreateNew: 它向操作系統(tǒng)指定它應(yīng)該創(chuàng)建一個新的文件。
    • Open:它打開一個現(xiàn)有文件。
    • OpenOrCreate:它向操作系統(tǒng)指定它應(yīng)該打開一個文件(如果存在),否則應(yīng)該創(chuàng)建一個新的文件。
    • Truncate:它打開一個現(xiàn)有文件,并將其大小截?cái)酁榱阕止?jié)。
  • FileAccess - FileAccess枚舉器有成員:ReadReadWriteWrite。

  • FileShare - FileShare枚舉器具有以下成員:
    • Inheritable:它允許文件句柄將繼承傳遞給子進(jìn)程。
    • None:它會拒絕當(dāng)前文件的共享
    • Read:它允許打開文件進(jìn)行讀取
    • ReadWrite:它允許打開文件進(jìn)行閱讀和寫入
    • Write:它允許打開文件進(jìn)行寫入

示例

以下程序演示了如何使用FileStream類:

using System;
using System.IO;

namespace FileIOApplication
{
   class Program
   {
      static void Main(string[] args)
      {
         FileStream F = new FileStream("test.dat", FileMode.OpenOrCreate, FileAccess.ReadWrite);
         for (int i = 1; i <= 20; i++)
         {
            F.WriteByte((byte)i);
         }

         F.Position = 0;
         for (int i = 0; i <= 20; i++)
         {
            Console.Write(F.ReadByte() + " ");
         }
         F.Close();
         Console.ReadKey();
      }
   }
}

當(dāng)上述代碼被編譯并執(zhí)行時,它產(chǎn)生以下結(jié)果:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 -1

C# 中的高級文件操作

前面的例子提供了 C# 中的簡單文件操作。要利用 C# 中的System.IO類的強(qiáng)大功能,需要知道這些類常用的屬性和方法。

System.IO類中一此最常用的方法和示例如下所列 -


上一篇:C#枚舉下一篇:C#預(yù)處理指令