C#: 将输出重定向

默认情况下,C# console Application 的标准输出就是那个控制台窗口,有时候可以重定到文件,以下是实现代码:

using System.IO;

using System.Text;

using System;

 

var defaultEncoding = Encoding.Default;

Console.WriteLine("开始时间:{0}",DateTime.Now.ToString());

//重定向输出到一个文件中

var stream = new FileStream("C:/log.txt",FileMode.Create);

Console.SetOut(new StreamWriter(stream));

Console.WriteLine("开始时间:{0}",DateTime.Now.ToString());

Console.WriteLine("结束时间:{0}",DateTime.Now.ToString());

//结束重定向

Console.Out.Close();

//将输出定向到控制台窗口

Console.SetOut(new StreamWriter(Console.OpenStandardOutput,defaultEncoding);

Console.WriteLine("结束时间:{0}",DateTime.Now.ToString());

Console.Out.Close();

 

Console.ReadKey();

需要注意的地方有两点:

1.在重新将输出定向到控制台窗口时,必须要指明Encoding的方式,这样才会用默认的DBCSCodePageCoding(我的电脑是简体中文系统)来处理中文,否则,”结束时间“这几个中文字会出现乱码

2.别忘了最后的Console.Out.Close(), 如果没有这个,最后一行文字就不显示到控制台窗口中(没搞明白为什么。。。)

 

转载于:https://www.cnblogs.com/sunshore/p/3548363.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值