FileStream myFileStream = File.Open("C:\\file.txt", FileMode.Open);
这一行声明并初始化一个变量myFileStream,但是这个变量到底是什么?它是否包含“file.txt”中的所有字节?或者它是否包含与文件建立连接的信息?
答案 0 :(得分:1)
它包含有关与文件建立的连接的信息。现在,当建立连接并打开文件时,您可以操作文件中的文本。
答案 1 :(得分:1)
变量myFileStream
只是HANDLE
。没什么。
您可以使用此 HANDLE 访问文件的内容,或使用其他方法/功能修改文件的权限。
在二进制级别上,它只不过是操作系统用来引用该文件以供其他方法/功能使用的32位/ 64位数字。
这是对你问题的简单回答
FileStream是否包含所有文件的数据?
它包含无数据,但代表 HANDLE 以访问所有文件的数据。
答案 2 :(得分:1)
来自维基百科的定义
In computer science, a stream is a sequence of data elements made available over time
所以你的变量myFileStream
只是一个允许你操作大量数据的指针
可能你需要寻找Stream和Buffer之间的区别
缓冲区通常只是一块内存块,可以将内容存储在RAM中。
流可以让您将内容存储在磁盘上,发送到其他计算机,如互联网,串行端口,UCB等。流通常使用缓冲区来优化传输速度。
答案 3 :(得分:0)
FileStream
对象表示文件表示的句柄。它充当对操作系统处理的某些底层结构的引用,允许您的代码向操作系统询问文件系统中驻留文件的操作,例如Read
,Write
和Seek
。
重要的是要记住,Stream
一般是抽象结构(来自MSDN page on Streams),旨在为类似概念的常见操作提供干净的界面,例如File
或Socket
。