string strContents = string.Empty;
            StreamReader objReader = null;   就是这里是什么意思。
            try
            {
                objReader = new StreamReader(tmpFileName);
                strContents = objReader.ReadToEnd();
                objReader.Close();
                objReader = null;
                return strContents;
            }
            catch { return ""; }

解决方案 »

  1.   

    实例化一个StreamReader对象
    = null 可以去掉
      

  2.   

    哦。回复1楼。那StreamReader的用法呢他主要针对的是哪些?
      

  3.   

    回复3楼。你完全是打酱油的。你去吧。古剑奇谭就是一悲剧,狐狸回家了。兰生和孙小姐在一起了。红玉去了昆仑山,屠夫死了。。boss最后是欧阳。挂了。他的老婆是梧桐。。
      

  4.   

    习惯问题。
    StreamReader objReader = null;
    对变量初始化,虽然你不初始化也是null,但是有时候可能会编译不通过。系统认为你没有初始化就是用变量了,例如:
    StreamReader objReader;
    if(true)
    {
        objReader = new StreamReader(fs);
    }
    objReader.Write...
    依然会报错,可能就是避免报错,先初始化一下。
      

  5.   

    我承认是msdn上复制下来的
    实现一个 TextReader,使其以一种特定的编码从字节流中读取字符。命名空间:  System.IO
    程序集:  mscorlib(在 mscorlib.dll 中)
    StreamReader 旨在以一种特定的编码输入字符,而 Stream 类用于字节的输入和输出。使用 StreamReader 读取标准文本文件的各行信息。除非另外指定,StreamReader 的默认编码为 UTF-8,而不是当前系统的 ANSI 代码页。UTF-8 可以正确处理 Unicode 字符并在操作系统的本地化版本上提供一致的结果。默认情况下,StreamReader 不是线程安全的。有关线程安全包装的信息,请参见 TextReader..::.Synchronized。Read(array<Char>[]()[], Int32, Int32) 和 Write(array<Char>[]()[], Int32, Int32) 方法重载读取和写入 count 参数指定的字符数。这些区别于 BufferedStream..::.Read 和 BufferedStream..::.Write,后两者读写由 count 参数指定的字节数。仅将 BufferedStream 方法用于读写字节数组元素的整型数。
      

  6.   

    StreamReader就是一个读文本流的封装类。
    基本用法是
    Read
    ReadLine
    ReadToEnd
    这几种。至于用法,我觉得MSDN比我们很多人都专业的多。
      

  7.   

    个人认为这个=null还是要留着,不管是创建一个变量还是实例化一个对象的时候,都赋下初值比较好。