zoukankan      html  css  js  c++  java
  • log记录日志

    由于之前的工作中用到了记录日志,就像提笔忘字一样,我怎么想都想不出来,现在记一下

    先建一个类Log

    //记录日志信息
    public class Log
    {
        public static void LogMsg(int type,string name,string msg)
        {
            //日志存放的路径
            string path = @"d:log";
            //文件名以时间命名
            string file = DateTime.Now.ToShortDateString ()+".txt";
            FileStream fs = null;
            //判断文件是否存在
            if(!File.Exists(file)){
                fs = File.Create(path+file);
            }else{
        //文件存在,FileMode.Append直接追加到文件的下一行,FileMode.Create则是每次都把原来的覆盖掉,文件中只保存一条文档,如果不存在则创建
        
                fs = File.Open(path+file,FileMode.Append);
            }
    
            StreamWriter sw = new StreamWriter(fs);
    //using限制着文件流的开关
            using(sw)
            {
                string content = "";
                if(type==0)
                {
                    content = "["+name+"] -- "+DateTime.Now.ToString()+"  --  结果:"+msg;
                }
                else
                {
                    content = "["+name+"] -- "+DateTime.Now.ToString()+"  --  结果:失败,原因:"+msg;
                }
                //按行写入
                sw.WriteLine(content);    
            }
        }
    
    }     

    后台调用的时候

    Log.LogMsg(type,name,msg);

    读取文档中的日志

    string path = "@/log/"; //定义上传路径  
    StreamReader smRead = new StreamReader(path,   
    System.Text.Encoding.Default);
    string[] strs =smRead.ReadAllLines();// 按行读取

    接着是复制的方法

    public static void Main()
        {
            FileStream fr = new FileStream(@"g:变节-潜罪犯.mkv",FileMode.Open);
            FileStream fw = null;
            //判断文件是否存在
            if(!File.Exists(@"d:变节-潜罪犯.mkv"))
            {
                fw = new FileStream(@"d:变节-潜罪犯.mkv",FileMode.Create);
            }
            else
            {
                Console.WriteLine("文件已经存在,是否覆盖?Y/N");
                if(Console.ReadLine().ToLower()=="y")
                {
                    fw =  new FileStream(@"d:变节-潜罪犯.mkv",FileMode.Create);
                }
            }
            byte[] buffer = new byte[1024*4];
            //获得总长度
            long size = fr.Length;
            int readsize = 0;
            using(fr)
            {
                using(fw)
                {
                    int i = 0;
                    while((i=fr.Read(buffer,0,buffer.Length))!=0)
                    {    
                        
                            //获得已经读取的字节数
                            readsize+=i;
                            //计算百分比
                            double d = (double)readsize/size *100 ;
                            Console.WriteLine(d.ToString("0.0")+"%");
                            fw.Write(buffer,0,i);
                        
                    }
                }
            }
    
        }
  • 相关阅读:
    实验四
    实验三 进程调度模拟程序
    实验二 调度
    一个完整的大作业
    数据结构化与保存
    爬取新闻列表
    用requests库和BeautifulSoup4库爬取新闻列表
    中文词频统计及词云制作
    组合数据类型练习,英文词频统计实例
    字符串操作练习:星座、凯撒密码、99乘法表、词频统计预处理
  • 原文地址:https://www.cnblogs.com/llxy/p/3891568.html
Copyright © 2011-2022 走看看