A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© .NET初学者 中级黑马   /  2014-1-11 12:47  /  1319 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;           //using指令
namespace _9._15._2_using语句的示例
{
   class Program
    {
       static void Main(string[] args)
       {
           //using语句
           using (TextWriter tw = File.CreateText("Lincoln.txt"))
           {
                tw.WriteLine("Four scoreand seven years ago...");
           }
           //using语句
           using (TextReader tr = File.OpenText("Lincoln.txt"))
            {
                string inputString;
                while ((inputString =tr.ReadLine()) != null)
                {
                   Console.WriteLine(inputString);
                }
           }
           Console.ReadKey();
       }
    }
}
有以下几个问题请各位大神帮帮忙:
1、using (TextWriter tw = File.CreateText("Lincoln.txt"))这句话是什么意思?向Lincoln.txt文本文件中写入的内容是赋给了tw还是存到了其它地方?而tw是变量还是对象呢?
2、 tw.WriteLine("Four score and seven years ago,...");为何用tw调用WriteLine方法,而不用Console呢?他们两个有什么区别?

1 个回复

正序浏览
我没有记错的话这个应该是文件流里面内容,tw 是一个对象,流对象,用来在磁盘上面写文本文件用的,console这个是控制台里面打印中的类,两个操作的对象是不一样的,WriteLine 是通过流向磁盘文本中写入类容的。第一句之所以用using括起来,是因为操作的和磁盘文件有关,是非托管资源,GC搞不定的东西,需要手动释放连接,但是FileWrite实现了IDispable(记不清拼写了),接口,通using后,会自动调用dispose方法回收资源的。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马