版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
FileTextfilescontaindatathatcanbereadinatexteditorbecausethedatahasbeenencodedusingaschemesuchasASCIIorUnicode.•Binaryfilescontaindatathathasnotbeenencodedastext.Theircontentsareinbinaryformat,whichmeansthatyoucannotunderstandthembyviewingtheminatexteditorC#FileclassandstaticmethodsusingSystem.IO;publicclassFileStatistics{publicstaticvoidMain(){stringfileName;Console.Write("Enterafilename>>");fileName=Console.ReadLine();if(File.Exists(fileName)){Console.WriteLine("Fileexists");Console.WriteLine("Filewascreated"+File.GetCreationTime(fileName));Console.WriteLine("Filewaslastaccessed"+File.GetLastAccessTime(fileName));Console.WriteLine("Filewaslastwrittento"+File.GetLastWriteTime(fileName));}else{Console.WriteLine("Filedoesnotexist");}}}FilesandStreamsWhenyoureadfromorwritetoafile,youuseafileprocessingclassinsteadofConsole.ManyfileprocessingclassesareavailableinC#,including:•StreamReader,fortextinputfromafile•StreamWriter,fortextoutputtoafile•FileStream(whichisusedaloneandwithbothStreamReaderandStreamWriter),forbothinputfromandoutputtoafileFileModeFileAccessYoucanuseaFileStreamobjectasanargumenttheStreamWriterconstructor.ThenyouuseWriteLine()orWrite()tosendastringtotheFileStreamfile.WritingdatatoatextfileReadingfromatextfileSearchingasequentialtextfileAfileisreadinorderthroughafilepositionpointer.Seek()methodtorepositionthefilepointer,inFile.Seek(0,SeekOrigin.Begin);UsingFileStream.Writeand.ReadFileStreamfs=null;stringfileName=@"C:\Users\Shine\Desktop\ConsoleApplication1\1.txt";Try{fs=newFileStream(fileName,FileMode.OpenOrCreate);//fs=newFileStream(fileName,FileMode.Append);stringwriteStr="asdf";fs.Write(Encoding.UTF8.GetBytes(writeStr),0,writeStr.Length);fs.Close();}catch(Exceptione){Console.WriteLine(e.Message.ToString());}try{fs=newFileStream(fileName,FileMode.OpenOrCreate);byte[]s=newbyte[10];fs.Read(s,0,10);stringreadStr=Encoding.UTF8.GetString(s);Console.WriteLine(readStr);fs.Close();}catch(Exceptione){Console.WriteLine(e.Message.ToString());}fs.Close();Console.ReadKey();SerializationanddeserializationSerializationistheprocessofconvertingobjectsintostreamsofbytes.Deserializationisthereverseprocess;itconvertsstreamsofbytesbackintoobjects.publicdelegatevoidPriceChangedHandler(decimaloldPrice,decimalnewPrice);publicclassStock
{stringsymbol;decimalprice;publicStock(stringsymbol){this.symbol=symbol;}publiceventPriceChangedHandlerPriceChanged;publicdecimalPrice
{get{returnprice;}set{if(price==value)return;//fireeventifinvocationlistisnotemptyif(PriceChanged!=null)PriceChanged(price,value);price=value;
}
}
}publicstaticvoidchange(decimalx,decimaly)
{Console.WriteLine(y);
}publicstaticvoidup(decimalx,decimaly)
{Console.WriteLine("up");Console.WriteLine(y);
}staticvoidMain(string[]args)
{Stockst=newStock("LIU");st.PriceChanged+=change;st.PriceChanged+=up;st.Price=20;
}StandardEventPatternTheNetFrameworkdefinesastandardpatternforwritingevents.eventsarebasedontheEventHandlerdelegateandtheEventArgsbaseclass.publicdelegatevoidEventHandler<TEventArgs>(objectsource,TEventArgse)whereTEventArgs:EventArgs;derivefromEventArgspublicclassPriceChangedEventArgs:EventArgs
{publicreadonlydecimalLastPrice,NewPrice;publicPriceChangedEventArgs(decimallastPrice,decimalnewPrice){LastPrice=lastPrice;NewPrice=newPrice;}
}definepublisherclasspublicclassStock
{stringsymbol;decimalprice;publicStock(stringsymbol){this.symbol=symbol;}publiceventEventHandler<PriceChangedEventArgs>PriceChanged;//EventHandlerisadelegateprotectedvirtualvoidOnPriceChanged(PriceChangedEventArgse)//here,fireanevent
{if(PriceChanged!=null)PriceChanged(this,e);
}publicdecimalPrice
{get{returnprice;}set
{if(price==value)return;OnPriceChanged(newPriceChangedEventArgs(price,value));price=value;
}
}
}definesubscribersstaticvoidstock_price_changed(objectsender,PriceChangedEventArgse)
{if((e.NewPrice-e.LastPrice)/e.LastPrice>0.1M)Console.WriteLine("Alert,10%priceincrease!");
}staticvoidMain(string[]args)
{Stockst=newStock("LIU");st.Price=27.10M;Console.WriteLine("OK");st.PriceChanged+=stock_price_changed;st.Price=31.59M;
}nongenericEventHandlerdelegateThismeansthatnoadditionalinformationneedbetransmittedwithevent.publiceventEventHandlerPriceChanged;EventAccessorsAnevent’saccessorsaretheimplementationsofits+=and−=functions.publiceventEventHandlerPriceChanged;//默认产生下面的代码EventHandler_priceChanged;//PrivatedelegatepubliceventEventHandlerPriceChanged{add{_priceChanged+=value;}remove{_priceChanged−=value;}}public
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年医院药品考核真题附参考答案详解(满分必刷)
- 2026年《中西医结合助理医师》考试题库及参考答案详解一套
- 2026年一级注册建筑师《建筑结构》练习试题含答案详解(新)
- 2026年商业摄影师考试黑钻押题含完整答案详解(夺冠系列)
- 2026年中医执业助理医师测试卷附完整答案详解【典优】
- 2026年全国法律资格完整综合提升测试卷一套附答案详解
- 2026年学生思想培训班心得体会进阶秘籍
- 2026年第三届红旗杯班组长竞赛考前冲刺测试卷【预热题】附答案详解
- 2026年税务师道通关试卷带答案详解(培优A卷)
- 2026年安管三类人员(水安)通关检测卷含答案详解(满分必刷)
- 《用事实说话-透明化沟通的8项原则》读书笔记
- 《海洋工程设计基础》课件-第二章 海洋平台载荷
- 我国城市流浪犬猫安置的现状与分析
- (2021-2025)五年高考英语真题分类汇编专题16 完形填空(10空和20空)(全国)(原卷版)
- T-ZZB 2691-2022 塔式起重机司机室
- 金融交易操盘手实战技能训练手册
- 清华最难的数学试卷
- 2024-2025学年广东省深圳市龙华区六年级下册期末英语检测试题(附答案)
- 物料防呆管理办法
- 全国课一等奖统编版语文七年级上册《我的白鸽》公开课课件
- 集团资金收支管理办法
评论
0/150
提交评论