今天偶然使用VS代码分析,发现CA2000警告,然后其中一条为streamWriter、streamReader与FileStream相关内容,特查询并记录一下。

引文地址:http://bbs.csdn.net/topics/390313584;

        http://blog.csdn.net/jaychouliyu/article/details/6152256

实现代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Threading; namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
FileStream fs = new FileStream("DataFile.dat", FileMode.Create);
//StreamReader sr = new StreamReader(fs);
StreamWriter sw = new StreamWriter(fs);
sw.Write("Hi there");
//注意:调用StreamWriter.Close会同时关闭其使用的FileStream对象,而FileStream对象不需要显示地关闭
//sw.Close();
sw.Dispose();
fs.Dispose(); Thread.Sleep();
if(sw == null)
{
Console.WriteLine("Null");
}
else
{
Console.WriteLine("not Null");
}
Console.ReadLine();
}
}
}

先释放“sw”后释放“fs”时,确实会出现“对象未按所有异常路径释放”;如果先释放“fs”,后释放“sw”,出现“ObjectDisposeException”。“fs”与“sw”的确是互相关联,释放其中一个,会对另外一个造成一定的影响,

(整理)streamWriter、streamReader与FileStream的更多相关文章

  1. File FileStream StreamWriter StreamReader文件读写操作方法

    string path = "D:\\AccountChecking\\Test.txt"; string content = "abcdefg\r\nhigklmn\r ...

  2. C#中FileStream和StreamWriter/StreamReader的区别

    首先致谢!转自:http://blog.sina.com.cn/s/blog_67299aec0100snk4.html   本篇可能不是非常深入,但是胜在清晰明了   FileStream对象表示在 ...

  3. FileStream StreamWriter StreamReader BinaryReader

    FileStream vs/differences StreamWriter? http://stackoverflow.com/questions/4963667/filestream-vs-dif ...

  4. c#StreamWriter,StreamReader类(主要用于文本文件访问)

    1.为什么要使用StreamReader或者StreamWriter 如果对文本文件需要读取一部分显示一部分则使用FileStream会有问题,因为可能FileStream会在读取的时候把一个汉字的字 ...

  5. StreamWriter StreamReader

    private void WriteLoginJsonData(object jsonData) { using (FileStream writerFileStream = new FileStre ...

  6. C#流总结(文件流、内存流、网络流、BufferedStream、StreamReader/StreamWriter、TextReader/TextWriter)

    一.文件流 FileStream类主要用于读写磁盘文件.常用于向磁盘存储数据或读取配置文件. 读取文件: //文件流:读取 FileStream fileStream = File.Open(@&qu ...

  7. StreamReader和StreamWrite与FileStream区别

    具体用法不在赘述. 记录一下用法的区别 StreamReader: FileStream fs = new FileStream(@"D:\Readme.txt",FileMode ...

  8. 【整理】C#文件操作大全(SamWang)

    [整理]C#文件操作大全(SamWang) 文件与文件夹操作主要用到以下几个类: 1.File类: 提供用于创建.复制.删除.移动和打开文件的静态方法,并协助创建 FileStream 对象. msd ...

  9. 【整理】C#文件操作大全(SamWang)<转>

    文件与文件夹操作主要用到以下几个类: 1.File类: 提供用于创建.复制.删除.移动和打开文件的静态方法,并协助创建 FileStream 对象. msdn:http://msdn.microsof ...

随机推荐

  1. Dynamics CRM4.0 和 Dynamics CRM2011 Plugin 实现一样的功能的方法的比较

    1.给类型赋值不同 CRM4 plugin给lookup赋值为空 : Lookup lookupnull = new Lookup(); lookupnull.IsNull = true; looku ...

  2. LintCode "The Smallest Difference"

    Binary search. class Solution { int _findClosest(vector<int> &A, int v) { , e = A.size() - ...

  3. 剑指offer系列60---第一个只出现一次的字符

    [题目]在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符的位置. * 若为空串,返回-1.位置索引从0开始 * [思路]1 首先遍历字符串数组,添 ...

  4. 剑指offer系列47---翻转单词顺序

    [题目]输入“I am a student.”>>>“.tneduts a ma I”.>>输出:student. a am I package com.exe9.off ...

  5. Redis在Windows环境下搭建

    1.  下载Redis-Windows版本 Redis官网下载页面: http://redis.io/download Windows下Redis项目: https://github.com/MSOp ...

  6. Linux下SSH的Log文件路径

    Redhat or Fedora Core: /var/log/secure # Mandrake, FreeBSD or OpenBSD: /var/log/auth.log # SuSE: /va ...

  7. HDU3530 子序列

    题目大意:给出一串长度为n的整数串,求最长的一个连续子序列,满足该序列中最大的元素与最小的元素之差大于等于m, 并且小于等于k.n<=100000 分析:维护两个单调队列,一个递增的,维护最小值 ...

  8. c++builder6.0 mdi窗体+自定义子窗体

  9. jsch ssh服务器调用Linux命令或脚本的小问题

    代码如下: public static boolean execshell(String command, String user, String passwd, String host) throw ...

  10. mysql小问题

    报错信息如下: 主要是因为用root用户登录查询其他用户的表,结果这个用户不存在了,所以导致没有权限.临时解决办法,给root赋所有权限: grant all privileges on *.* to ...