亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

使用C#讀物二進制文件的方法(源代碼)

2023-05-15 12:29:34
字體:
來源:轉載
供稿:網友

本文要介紹的C#本地讀寫二進制文件,二進制文件指保存在物理磁盤的一個文件。

第一步:讀寫文件轉成流對象。其實就是讀寫文件流 (FileStream對象,在System.IO命名空間中)。File、FileInfo、FileStream這三個類可以將打開文件,并變成文件 流。下面是引用微軟對File、FileInfo、FileStream的介紹

System.IO.File類 提供用于創建、復制、刪除、移動和打開文件的靜態方法,并協助創建 FileStream 對象。

System.IO.FileInfo類 提供創建、復制、刪除、移動和打開文件的實例方法,并且幫助創建 FileStream 對象。無法繼承此類。

System.IO.FileStream類 公開以文件為主的 Stream,既支持同步讀寫操作,也支持異步讀寫操作。
我直接使用 FileStream,他繼承于Stream

第二步:讀寫流。讀寫二進制文件用System.IO.BinaryReaderSystem.IO.BinaryWriter類;讀寫文本文件用System.IO.TextReaderSystem.IO.TextWriter類。下面是我的實體 (即要保持到文件的數據)
  /// <summary>
 /// 學生基本信息類
 /// </summary>
 public class Student
 {
  /// <summary>
  /// 學號變量
  /// </summary>
  private String _id;
  /// <summary>
  /// 姓名變量
  /// </summary>
  private String _name;
  /// <summary>
  /// 語文成績變量
  /// </summary>
  private Double _score1;
  /// <summary>
  /// 數學成績變量
  /// </summary>
  private Double _score2;
  /// <summary>
  /// 英語成績變量
  /// </summary>
  private Double _score3;


  /// <summary>
  /// 學號屬性
  /// </summary>
  public String Id
  {
   get return _id; }
   set _id value}
  }
  /// <summary>
  /// 姓名屬性
  /// </summary>
  public String Name
  {
   get return _name; }
   set _name value}
  }
  /// <summary>
  /// 語文成績屬性
  /// </summary>
  public Double Score1
  {
   get return _score1; }
   set _score1 value}
  }
  /// <summary>
  /// 數學成績屬性
  /// </summary>
  public Double Score2
  {
   get return _score2; }
   set _score2 value}
  }
  /// <summary>
  /// 英語成績屬性
  /// </summary>
  public Double Score3
  {
   get return _score3; }
   set _score3 value}
  }
 }

 下面是我的讀方法,讀取文件中的信息到參數List<Studentstu中  

  /// <summary>
  /// 讀取信息方法
  /// </summary>
  /// <returns>讀取是否成功</returns>
  public void ReadInfo(List<Studentstu)
  {
   Console.WriteLine("請輸入文件讀取路徑:(鍵入回車為默認路徑)");
   String filename Console.ReadLine();
   FileStream fs;
   //默認路徑
   if (filename == "")
   {
    fs new FileStream("student.dll"FileMode.Open);
   }
   else
   {
    //如果文件不存在,就提示錯誤
    if (!File.Exists(filename))
    {
     Console.WriteLine("/n/t讀取失??!/n錯誤原因:可能不存在此文件");
     return;
    }
    //否則創建文件
    fs new FileStream(filename, FileMode.Open);
   }
   //使用二進制讀取
   BinaryReader br new BinaryReader(fs);
   Console.Write("讀取信息將覆蓋現有的信息,繼續嗎?y/n :");
   String command Console.ReadLine();
   if (command == "y" || command == "Y")
   {
    for (int 0; stu.Count; i++)
    {
     stu.RemoveAt(i);
    }
    //從磁盤上讀取信息
    try
    {
     while (true)
     {
      Student student new Student();
      student.Id br.ReadString();
      student.Name br.ReadString();
      student.Score1 br.ReadDouble();
      student.Score2 br.ReadDouble();
      student.Score3 br.ReadDouble();
      stu.Add(student);
      student null;
     }
    }
    catch (Exception)
    {
     Console.WriteLine("/n/n讀取結束!");
    }
   }
   br.Close();
   fs.Close();
  }


下面是我的寫入方法,寫入參數List<Studentstu中的數據


  /// <summary>
  /// 寫入信息方法
  /// </summary>
  /// <returns>寫入是否成功</returns>
  public void WriteInfo(List<Studentstu)
  {
   Console.WriteLine("請輸入文件保存路徑:(鍵入回車為默認路徑)");
   FileStream fs;
   String filename Console.ReadLine();
   //默認路徑
   if (filename == "")
   {
    fs new FileStream("student.dll"FileMode.Create);
   }
   //手動輸入路徑
   else
   {
    //如果文件存在,就提示錯誤
    if (File.Exists(filename))
    {
     Console.WriteLine("/n/t保存失??!/n錯誤原因:可能存在相同文件");
     return;
    }
    //否則創建文件
    fs new FileStream(filename, FileMode.Create);
   }
   //數據保存到磁盤中
   BinaryWriter bw new BinaryWriter(fs);
   foreach (Student student in stu)
   {
    bw.Write((String)student.Id);
    bw.Write((String)student.Name);
    bw.Write((Double)student.Score1);
    bw.Write((Double)student.Score2);
    bw.Write((Double)student.Score3);
    bw.Flush();
   }
   bw.Close();
   fs.Close();
   Console.WriteLine("保存成功!");
  }
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久久久久一区二区三区| 久久91亚洲精品中文字幕| 国产女同一区二区| 久久综合网hezyo| 欧美高清视频在线播放| 久久久久久亚洲精品中文字幕| 亚洲精品美女网站| 韩国视频理论视频久久| 亚洲天堂av在线免费| 亚洲最大福利视频网站| 美日韩精品视频免费看| 97超碰蝌蚪网人人做人人爽| 欧美日韩福利在线观看| 久久久视频在线| 国产综合在线视频| 久久久久久网址| 日韩欧美综合在线视频| 成人网页在线免费观看| 日韩黄色高清视频| 日韩欧美精品网站| 国产精品久久久久久久久久久新郎| 国产精品扒开腿做爽爽爽男男| 国产性猛交xxxx免费看久久| 欧美在线www| 国产午夜精品全部视频播放| 这里只有精品丝袜| 欧美激情免费在线| 精品夜色国产国偷在线| 国产精品激情自拍| 国产91色在线播放| 亚洲第一av网站| 成人精品久久久| 久久免费高清视频| 精品国产老师黑色丝袜高跟鞋| 久久精品国产亚洲精品| 日产精品99久久久久久| 欧美日韩在线视频观看| 日韩精品久久久久| 91中文在线观看| 97久久精品视频| 亚洲综合精品伊人久久| 欧美另类交人妖| 亚洲色图av在线| 国产精品第8页| 精品香蕉在线观看视频一| 国产精品视频精品| 亚洲精选在线观看| 久久99精品久久久久久琪琪| x99av成人免费| 欧美黑人一级爽快片淫片高清| 久久男人资源视频| 欧美成人免费播放| 97久久精品在线| 国产国语videosex另类| 欧美另类高清videos| 丝袜亚洲另类欧美重口| 欧美亚洲另类激情另类| 欧洲成人免费aa| 久久久久国产精品免费| 亚洲aa中文字幕| 久久视频在线直播| 久久青草福利网站| 九九久久久久久久久激情| 在线午夜精品自拍| 国产a∨精品一区二区三区不卡| 美女啪啪无遮挡免费久久网站| 国产精品尤物福利片在线观看| 国产美女91呻吟求| 久久久久久久久电影| 亚洲国产精品yw在线观看| 九色91av视频| 久久久久久久久久久网站| 成人黄色在线免费| 欧美野外猛男的大粗鳮| 亚洲人成77777在线观看网| 久久久久久久久久久免费| 米奇精品一区二区三区在线观看| 最近2019中文字幕第三页视频| 中文字幕日韩欧美在线| 久久999免费视频| 国产日本欧美一区| 中文字幕久热精品在线视频| 浅井舞香一区二区| 国产精品99久久99久久久二8| 日本免费一区二区三区视频观看| 欧美在线一区二区视频| 亚洲图片欧美午夜| 国产中文日韩欧美| 亚洲va欧美va在线观看| 国产精品永久免费视频| 欧美影院在线播放| 精品久久国产精品| 亚洲性夜色噜噜噜7777| 久久综合伊人77777蜜臀| 日韩国产激情在线| 亚洲国产一区自拍| 国产精品吹潮在线观看| 久久久久久久国产精品视频| 青青精品视频播放| 在线播放国产一区中文字幕剧情欧美| 欧美不卡视频一区发布| 欧美一级视频一区二区| 欧美成人精品在线| 日本一欧美一欧美一亚洲视频| 国产精品偷伦免费视频观看的| 色偷偷噜噜噜亚洲男人| 精品中文视频在线| 日韩欧美在线字幕| 92国产精品视频| 亚洲第一福利在线观看| 亚洲最大福利视频| 91精品久久久久久久久久入口| 久久免费精品日本久久中文字幕| 国产一区二区三区视频免费| 欧美大秀在线观看| 日本精品一区二区三区在线| 亚洲色图第一页| 91久久在线视频| 欧美精品在线播放| 久久久久99精品久久久久| 国产成人jvid在线播放| 国产v综合v亚洲欧美久久| 国产精品99久久99久久久二8| 精品香蕉一区二区三区| 亚洲成人精品视频| 色无极亚洲影院| 91美女片黄在线观看游戏| 亚洲天堂av网| 国产成人精品av| zzjj国产精品一区二区| 日韩av在线不卡| 欧美黄色三级网站| 日韩极品精品视频免费观看| 欧美国产在线电影| 日韩欧美国产网站| 久国内精品在线| 亚洲国产成人久久综合一区| 色诱女教师一区二区三区| 久久久久久久91| 97精品伊人久久久大香线蕉| 欧美激情在线观看| 热久久免费国产视频| 中文字幕不卡在线视频极品| 欧美成人黄色小视频| 国产狼人综合免费视频| 日韩av在线网址| 久久精品国产一区二区三区| 欧美一区二区三区精品电影| 日韩视频免费大全中文字幕| 欧美亚洲在线观看| 国产成人精品免高潮费视频| 色综合影院在线| 亚洲精品福利资源站| 欧美日韩精品在线| 日韩在线小视频| 国产精品爽爽ⅴa在线观看| 亚洲视频在线播放| 精品国产拍在线观看| 午夜精品久久久久久久久久久久| 欧美日韩精品中文字幕| 国产极品精品在线观看| 欧美高清videos高潮hd| 中文字幕精品—区二区| 欧美在线观看日本一区|