底层代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace AddLog
{
/// <summary>
/// 记录:文件以时间命名
/// </summary>
public class Log
{
private static System.IO.StreamWriter swt;
private static System.IO.FileStream fs;
/// <summary>
/// 判断文件是否存在
/// </summary>
private static bool IsExsFile = false;
public static void Init()
{
Init("");
}
/// <summary>
/// 记录初始化
/// </summary>
/// <param name="DirName">文件夹名字:默认为Log</param>
public static void Init(string DirName)
{
string LogPath = string.Empty;
if (!string.IsNullOrWhiteSpace(DirName))
{
LogPath = Environment.CurrentDirectory + "\\" + DirName;
}
else
{
LogPath = Environment.CurrentDirectory + "\\Log";
}
if (!System.IO.Directory.Exists(LogPath))
{
System.IO.Directory.CreateDirectory(LogPath);
}
string LogFile = LogPath + "\\" + DateTime.Now.ToString("yyyy-MM-dd") + ".txt"; if (!System.IO.File.Exists(LogFile))
{
fs = new System.IO.FileStream(LogFile, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite);
swt = new System.IO.StreamWriter(fs, Encoding.UTF8);
}
else
{
IsExsFile = true;
swt = new System.IO.StreamWriter(LogFile,true);
} }
/// <summary>
/// 清除缓存
/// </summary>
public static void Clear()
{
swt.Flush();
swt.Close();
swt.Dispose();
if(!IsExsFile)
{
fs.Close();
fs.Dispose();
} }
/// <summary>
/// 写操作
/// </summary>
/// <param name="strTxt">写入文本</param>
public static void Write(string strTxt)
{
if (swt != null)
{
swt.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + "\t" + strTxt);
}
}
}
}

调用代码:

AddLog.Log.Init();
AddLog.Log.Write("测试");
AddLog.Log.Clear();

Asp.Net写文本日志的更多相关文章

  1. C#写文本日志帮助类(支持多线程)改进版(不适用于ASP.NET程序)

    由于iis的自动回收机制,不适用于ASP.NET程序 代码: using System; using System.Collections.Concurrent; using System.Confi ...

  2. C#写文本日志帮助类(支持多线程)

    代码: using System; using System.Configuration; using System.IO; using System.Threading.Tasks; namespa ...

  3. glog另启动线程写文本日志

    glog本身是很高效的,google的大牛肯定知道大规模的写日志用glog的话肯定会影响业务线程的处理,带负荷的磁盘IO谁都桑不起.比方levelDB就是默认异步写,更不用说google的三驾马车都是 ...

  4. 如何将Unicode文本写到日志文件中

    有时为了定位问题,我们需要结合打印日志来处理.特别是较难复现的,一般都需要查看上下文日志才能找出可能存在的问题.考虑到程序要在不同语言的操作系统上运行,程序界面显示要支持Unicode,打印出来的日志 ...

  5. asp.net MVC4 lognet4 日志

    asp.net MVC4 lognet4 日志 步骤: 1.引入log4net.dll 2.写配置文件 web.config 加入 如下代码 在<configSections> 中加入&l ...

  6. SQLite 预写式日志

    SQLite在3.7.0版本引入了WAL (Write-Ahead-Logging),WAL的全称是Write Ahead Logging,它是很多数据库中用于实现原子事务的一种机制,引入WAL机制之 ...

  7. 预写式日志WAL

    Chapter 25. 预写式日志(Write-Ahead Logging (WAL)) Table of Contents 25.1. WAL 的好处 25.2. WAL 配置 25.3. 内部 预 ...

  8. Spring AOP 实现写事件日志功能

    什么是AOP?AOP使用场景?AOP相关概念?Spring AOP组件?如何使用Spring AOP?等等这些问题请参考博文:Spring AOP 实现原理 下面重点介绍如何写事件日志功能,把日志保存 ...

  9. 用ASP.Net写一个发送ICQ信息的程序

    用ASP.Net写一个发送ICQ信息的程序 这里我给大家提供一个很实用的例子,就是在线发送ICQ信息.想一想我们在网页上直接给朋友发送ICQ信息,那是多么美妙的事情啊.呵呵,在吹牛啊,其实ICQ本来就 ...

随机推荐

  1. poj1922

    Ride to School Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 18704   Accepted: 7552 D ...

  2. android 百度地图定位功能实现

    历经几天时间,终于把定位功能给实现了,可谓是费劲千辛万苦啊,有定位知识还有图层知识,在这里我把代码给大家贴出来,一起分享一下下啦. package com.example.foreveross.off ...

  3. SharePoint 2013 设置自己定义布局页

    在SharePoint中.我们常常须要自己定义登陆页面.错误页面.拒绝訪问等:不知道大家怎样操作,曾经自己常常在原来页面改或者跳转.事实上SharePoint为我们提供了PowerShell命令,来改 ...

  4. Java压缩技术的学习

    由于工作的需要,经常要手动去打上线安装包,为了方便,自己写程序去帮助打包.使用过Unix或者Linux的人都基本上都用过tar打包以及gzip压缩,但在Windows下使用得最多的压缩还是RAR和Zi ...

  5. Cannot create JDBC driver of class '' for connect URL 'jdbc:mysql://127.0.0.1:3306/test'

    原来的配置如下: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http ...

  6. JAVA 从GC日志分析堆内存 第七节

    JAVA 从GC日志分析堆内存 第七节   在上一章中,我们只设置了整个堆的内存大小.但是我们知道,堆又分为了新生代,年老代.他们之间的内存怎么分配呢?新生代又分为Eden和Survivor,他们的比 ...

  7. 关于 css padding 的使用 padding会将使用该属性的元素撑开

    .right_img_box{ width:300px; height:250px; border:1px solid #c9c9c9; margin-bottom:15px; background: ...

  8. CentOS 7 +Nginx

    一:安装前的准备工作  安装 pcre-devel环境 #yum -y install pcre-devel 安装 openssl  环境   #yum -y install openssl open ...

  9. jQuery 1.9不支持$.browser 怎么判断浏览器类型和版本

    $.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase());$.browser.webkit = /webkit/.te ...

  10. Android 监听器

    Android提供很多种事件监听器,监听器主要是为了相应某个动作,可以通过监控这种动作行为,来完成我们需要的程序功能.      OnItemClickListener:               ...