Logger日志打印普通方法
using System;
using System.IO;
using System.Text; namespace Core
{
public class LogHelper
{
private static void writeLog(string log)
{ string strFilePath = AppDomain.CurrentDomain.BaseDirectory + "logs\\log.txt";
string strDirPath = Path.GetDirectoryName(strFilePath);
if (!Directory.Exists(strDirPath))//Directory.Exists(dirPath)目录的路径
Directory.CreateDirectory(strDirPath);//Directory.CreateDirectory(path)创建目录
strFilePath = Path.Combine(strDirPath, "log" + string.Format("{0:yyyyMMdd}", DateTime.Now) + ".txt");//Path.Combine(strpath1,strpath2)
if (!File.Exists(strFilePath))//File.Exists(path),指定路径的文件是否存在
{
//FileStream fsCreate = File.Create(strFilePath);//创建路径
FileStream fsCreate = new FileStream(strFilePath, FileMode.OpenOrCreate, FileAccess.ReadWrite);
fsCreate.Close();
}
FileStream fs = new FileStream(strFilePath, FileMode.Append,FileAccess.Write);//任何读取操作都会报异常
StreamWriter sw = new StreamWriter(fs, Encoding.Default);
sw.WriteLine("--------------------------------------------");
sw.WriteLine("Timestamp: "+DateTime.Now.ToString());
sw.WriteLine("Message: " + log);
sw.WriteLine("--------------------------------------------");
sw.Close();
fs.Close();
}
//打印普通信息
public static void WriteInfo(string objectName, string info)
{ writeLog(objectName + ":" + info); } public static void WriteInfo(string objectName, string info, int lines)
{
string strlines = "";
for (int i = ; i < lines; i++)
{
strlines += "\r\n";
}
writeLog(objectName+":"+info);
//writeLog(strlines + DateTime.Now.ToString() + " INFO " + objectName + " " + info);
}
//打印错误信息
public static void WriteError(string objectName, string error)
{
writeLog(objectName+":"+error);
//writeLog(DateTime.Now.ToString() + " ERROR " + objectName + " " + error);
} public static void WriteError(string objectName, string error, int lines)
{
string strlines = "";
for (int i = ; i < lines; i++)
{
strlines += "\r\n";
}
writeLog(objectName + ":" + error);
//writeLog(strlines + DateTime.Now.ToString() + " ERROR " + objectName + " " + error);
} }
}
Logger日志打印普通方法的更多相关文章
- Logger日志打印规范
首先来看一下比较常用的Logger日志级别(部分未列出): error - 运行期错误日志记录,应该有专门的error日志文件.: warn - 警告信息,如程序调用了一个即将作废的接口,接口的不当使 ...
- 深入理解Logger日志——框架绑定原理
深入理解Logger日志--框架绑定原理 说到Logger日志的动态绑定,主要归功与Slf4j,在之前的文章也说过,Slf4j是类似于Apache Common-Logging,英文为Simple L ...
- Android日志打印类LogUtils,能够定位到类名,方法名以及出现错误的行数并保存日志文件
Android日志打印类LogUtils,能够定位到类名,方法名以及出现错误的行数并保存日志文件 在开发中,我们常常用打印log的方式来调试我们的应用.在Java中我们常常使用方法System.out ...
- Python 日志打印之自定义logger handler
日志打印之自定义logger handler By:授客 QQ:1033553122 #实践环境 WIN 10 Python 3.6.5 #实践代码 handler.py #!/usr/bin/env ...
- 打印 Logger 日志时,需不需要再封装一下工具类?
在开发过程中,打印日志是必不可少的,因为日志关乎于应用的问题排查.应用监控等.现在打印日志一般都是使用 slf4j,因为使用日志门面,有助于打印方式统一,即使后面更换日志框架,也非常方便.在 < ...
- Logger日志级别说明及设置方法、说明 (zhuan)
http://blog.csdn.net/rogger_chen/article/details/50587920 ****************************************** ...
- Logger日志级别说明及设置方法、说明
日志记录器(Logger)是日志处理的核心组件.log4j具有5种正常级别(Level).日志记录器(Logger)的可用级别Level (不包括自定义级别 Level), 以下内容就是摘自log4j ...
- Python同时向控制台和文件输出日志logging的方法 Python logging模块详解
Python同时向控制台和文件输出日志logging的方法http://www.jb51.net/article/66756.htm 1 #-*- coding:utf-8 -*- 2 import ...
- Java编码常见的Log日志打印问题
前言 本文总结了作者在Java代码检视中遇到的一些关于日志打印的问题,并给出修改建议.因能力有限,难免存在错漏,欢迎指正. 一. 不规范的异常打印 使用slf4j日志组件时,logger.error( ...
随机推荐
- 非常好的Java反射例子
1.Java反射的概念 反射含义:可以获取正在运行的Java对象. 2.Java反射的功能 1)可以判断运行时对象所属的类 2)可以判断运行时对象所具有的成员变量和方法 3)通过反射甚至可以调用到pr ...
- iOS app性能优化的那些事
iPhone上面的应用一直都是以流畅的操作体验而著称,但是由于之前开发人员把注意力更多的放在开发功能上面,比较少去考虑性能的问题,可能这其中涉及到objective-c,c++跟lua,优化起来相对 ...
- webform工程中aspx页面为何不能调用appcode文件夹下的类(ASP.NET特殊文件夹的用法)
App_code 只有website类型的工程才有效. App_Code 下创建的.cs文件仅仅是“内容”不是代码.你设置那个文件为“编译”就行了. 其他特殊文件夹 1. Bin文件夹 Bin文件夹包 ...
- MVC之超链接的寻址
传统式 href直接跟链接地址URL <a href="@Model.Base.BdtUrl" target="_blank">首页</a&g ...
- html5的标签
1.article与section div的区别 当一个标签只是为了样式化或者方便脚本使用时,应该使用 div . section 表示一段专题性的内容,一般会带有标题.,section 应用的典型场 ...
- 转载:Javascript作用域原理
首先看一个例子: var name = 'laruence'; function echo() { alert(name); var name = 'eve'; alert(name); alert( ...
- Linearizability and Sequential Consistency
Linearizability and Sequential Consistency a) A sequentially consistent data store. b) A data store ...
- SQL is null函数
Sql ISNULL() 函数 使用指定的替换值替换 NULL. 语法 ISNULL ( check_expression , replacement_value ) 参数 check_exp ...
- Redhat6.x下如何制作虚拟机快照和镜像封装
一.虚拟机快照 1.确认你的物理机上的vg还有足够的剩余空间 [root@hacker ~]# vgs VG #PV #LV #SN Attr VSize VFree vg_ ...
- OCR技术
"起初我写这篇教程是在情人节,OCR可以带给你一整年的爱". 你之前肯定已经见过,OCR技术被应用于在平板电脑上将扫描文件处理成手写字迹,还被应用于谷歌最近添加到他们的Transl ...