黑马程序员技术交流社区

标题: FileStream和StreamReader的关系 [打印本页]

作者: 忘忧草    时间: 2012-4-23 09:32
标题: FileStream和StreamReader的关系
通常FileStream fileStream = File.OpenRead(ofdImport.FileName);后面要跟
      StreamReader streamReader = new StreamReader(fileStream);

我想问的是:
FileStream不是有读写方法吗?为什么要新建一个StreamReader来读取FileStream?可不可以用FileStream的Read方法?不能的话FileStream的Read方法具体该怎么用?最好举个例子,谢谢
作者: 郭耀强    时间: 2012-4-23 14:05
FileStream读写的方法,刚刚小总结了一下,你可以去参考一下,http://blog.sina.com.cn/u/2506227675
作者: 忘忧草    时间: 2012-4-23 16:33
本帖最后由 忘忧草 于 2012-4-23 16:37 编辑
郭耀强 发表于 2012-4-23 14:05 http://blog.sina.com.cn/u/2506227675 ...

这样的话,一般情况下应该可以直接用FileStream读取文件,不用再创建StreamReader了吧?
不过像导入数据库的这种按行读取的文本StreamReader提供了ReadLine()方法,而FileStream没有,所以要用StreamReader,对吧?
作者: 郭耀强    时间: 2012-4-23 23:19
对啊,每行数据都没有固定的长度,所以也没法每次用FileStream来读取一个固定的长度,所以只好用StreamReader了,还有一个类可以读取File,
例如:读取所有的行用string lines=File.ReadAllLines(string path, Encoding encoding);
然后用foreach迭代取出每行也行




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2