想知道,C#中的文件缓冲的 流是什么意思?Flush() 执行的时候,究竟做了什么,流程是什么啊 缓冲区干嘛的

2024-11-20 03:27:41
推荐回答(5个)
回答1:

你写了一个程序,其中要对硬盘上的一个文件操作,FileStream fs = new FileStream(fileName)
这样就是建立了一个文件缓冲流,换句话的意思就是说你通过这条程序,计算机给了一一块内存空间,但是呢这块内存空间不是你想干什么就干涉么的,他是专门存fileName这个文件里面的内容的,内存空间的大小,和其他信息,简单地操作时没有办法访问的。当你要从文件里面读取一个Int整数的时候,程序做的不仅仅是读取一个int型整数,他会把该数据附近的一大块数据都读出来放在刚才的那块空间中,为什么这么做呢,因为CPU访问硬盘比访问内存慢多了,所以一开始读出很多的数据,后面需要使用的时候直接使用读出来的,就防止了再次访问硬盘。
相应的,你要网文件里面写入数据,也是先存到这个内存里,等存的东西足够多了,或者过了足够的时间,系统一次性把内容写入硬盘。
Flush的作用就是强制执行了一次把数据写出硬盘,这样,你写入的数据确实到了文件中,否则如果程序突然中断,你要写入的内容也许还没写到文件中,就造成了数据丢失。

回答2:

你写了一个程序,其中要对硬盘上的一个文件操作,FileStream fs = new FileStream(fileName)

这样就是建立了一个文件缓冲流,换句话的意思就是说你通过这条程序,计算机给了一一块内存空间,但是呢这块内存空间不是你想干什么就干涉么的,他是专门存fileName这个文件里面的内容的,内存空间的大小,和其他信息,简单地操作时没有办法访问的。当你要从文件里面读取一个Int整数的时候,程序做的不仅仅是读取一个int型整数,他会把该数据附近的一大块数据都读出来放在刚才的那块空间中,为什么这么做呢,因为CPU访问硬盘比访问内存慢多了,所以一开始读出很多的数据,后面需要使用的时候直接使用读出来的,就防止了再次访问硬盘。

相应的,你要网文件里面写入数据,也是先存到这个内存里,等存的东西足够多了,或者过了足够的时间,系统一次性把内容写入硬盘。

Flush的作用就是强制执行了一次把数据写出硬盘,这样,你写入的数据确实到了文件中,否则如果程序突然中断,你要写入的内容也许还没写到文件中,就造成了数据丢失。

回答3:

这样就是建立了一个文件缓冲流,换句话的意思就是说你通过这条程序,计算机给了一一块内存空间,但是呢这块内存空间不是你想干什么就干涉么的,他是专门存fileName这个文件里面的内容的,内存空间的大小,和其他信息,简单地操作时没有办法访问的。当你要从文件里面读取一个Int整数的时候,程序做的不仅仅是读取一个int型整数,他会把该数据附近的一大块数据都读出来放在刚才的那块空间中,为什么这么做呢,因为CPU访问硬盘比访问内存慢多了,所以一开始读出很多的数据,后面需要使用的时候直接使用读出来的,就防止了再次访问硬盘。
相应的,你要网文件里面写入数据,也是先存到这个内存里,等存的东西足够多了,或者过了足够的时间,系统一次性把内容写入硬盘。
Flush的作用就是强制执行了一次把数据写出硬盘,这样,你写入的数据确实到了文件中,否则如果程序突然中断,你要写入的内容也许还没写到文件中,就造成了数据丢失。

回答4:

写了一个程序,其中要对硬盘上的一个文件操作,FileStream fs = new FileStream(fileName)
这样就是建立了一个文件缓冲流,换句话的意思就是说你通过这条程序,计算机给了一一块内存空间,但是呢这块内存空间不是你想干什么就干涉么的,他是专门存fileName这个文件里面的内容的,内存空间的大小,和其他信息,简单地操作时没有办法访问的。当你要从文件里面读取一个Int整数的时候,程序做的不仅仅是读取一个int型整数,他会把该数据附近的一大块数据都读出来放在刚才的那块空间中,为什么这么做呢,因为CPU访问硬盘比访问内存慢多了,所以一开始读出很多的数据,后面需要使用的时候直接使用读出来的,就防止了。Flush的作用就是强制执行了一次把数据写出硬盘,这样,你写入的数据确实到了文件中,否则如果程序突然中断,你要写入的内容也许还没写到文件中,就造成了数据丢失。

回答5:

“昔者庄周梦为蝴蝶。”为何庄周梦为蝶,而非毛虫呢?因为蝶飞舞翩迁,好似神游的庄周。

那是什么样的力量,使虫成蝶?改变!通过努力改变自己。

有一座庙前的联是“问菩萨为何倒坐,叹众生不肯回头!”好一句“叹众生不肯回头!”当下,多少青年人,他们安于现状,满足与长辈们的安排,他们为了房子,车子,票子去拼搏,拼搏不到了,开始埋怨这社会的黑暗,不公。为何不回头呢?为何不回头看看自己究竟是一块沙粒,还是一颗无人赏识的珍珠。然后,改变自己,使自己化虫为蝶,变成珍珠。

改变自己,首先要有鲲想要化为“其翼若垂天之云”·“装扶摇而上者九万里”的鹏的雄心与决心。拿破仑说过,“不想当将军的士兵不是好士兵。”每一个想要改变的人一定是有一个让自己为之奋斗的目标的,那个目标不是梦想或是理想,他是你的转折点,只有完成了,才能有下一个更加想要完成的目标,一个人所处位置的改变,会改变它本身,改变他的视野与气质。所以一个人一生倘若只有一个目标,即使完成了,他也从未改变过,如流星在历史中一闪而过。

改变自己,还要有坚韧的毅力,倘若决心是弓,毅力就是箭,箭能飞多远,不仅取决于一张好弓,而且要手提供足够的力,就像粗糙丑陋如丑小鸭的可可豆,要经过烘焙及无数次的融化,凝固,才能达到可以在37°时,在舌尖融化的巧克力,所以想要改变自己,要有坚韧的毅力,做到任他八风狂悖,任他颠倒颇僻,我自巍然不动,我自心如磐石,就像爱迪生,用了无数次的实验,换来了人们对它的看法的改变。

改变自己,一定是想真善美靠齐的。就像武侠中,正义总战胜邪恶一样。正义可以输无数次,只要赢一次。而邪恶只要输一次,便永无翻身之地,所以心存善念就像一把剑。

所以一个人只要有一把好剑和一张好弓,才能射中自己的目标,从而改变自己。而弓·箭雨手的形成更要经过无数次的改变。

“我曾经想要改变世界,我失败了,后来我试着改变国家,我又失败了,接着我试着改变家人,我还是失败了。最终我发现如果我可以改变自己,就会影响家人,国家,乃至世界。”

这是一位牧师的墓志铭,所以先学会改变自己吧~只有改变,才能不再双鬓斑白时,陷入懊悔。