ps1989 发表于 2020-3-29 19:30

【学习分享】完整易语言日志源码-感谢各位大佬指点!

本帖最后由 ps1989 于 2020-3-29 22:17 编辑

感谢各位吾爱大佬的提点:longsui48、jidesheng6、xiaohui888、此人丶被害妄想、webstz
特别鸣谢吾爱大佬:longsui48、此人丶被害妄想 对本人的学习的帮助!!
         
在此特别将自己学到的日志模块分享出来,让更多与我一样学习易语言的新手朋友免绕路!!{:1_927:}






日志源码主要学习内容:
1.服务器获取时间节点
2.子程序及其参数的应用
3.常量表的应用
4.判断、如果、如果真的应用
5.写到文件与读入文件的应用
6.创建目录、判断循环首、寻找文件等的应用

源码如下:
.版本 2
.支持库 internet

.程序集 窗口程序集_启动窗口

.子程序 __启动窗口_创建完毕

目录说明 ()
日志记录并显示 (“软件启动成功!”, “软件启动成功!” + #换行符 + “接下来的内容都将被日志记录,并保存至目录下的《日志文件》文件夹!”)

.子程序 日志记录并显示
.参数 记录内容, 文本型
.参数 显示内容, 文本型, 可空
.局部变量 分隔符, 文本型
.局部变量 存储路径, 文本型

存储路径 = 取运行目录 () + “\日志文件\” + 时间到文本 (取现行时间 (), 2) + “-日志.txt”
分隔符 = “------------------------------------------------------------------------------”
.判断开始 (到文本 (读入文件 (存储路径)) ≠ “”)
    写到文件 (存储路径, 到字节集 (到文本 (读入文件 (存储路径)) + #换行符 + 分隔符 + #换行符 + 时间到文本 (取现行时间 (), 3) + #换行符 + 记录内容))
.默认
    写到文件 (存储路径, 到字节集 (分隔符 + #换行符 + 时间到文本 (取现行时间 (), 3) + #换行符 + 记录内容))
.判断结束

.如果真 (显示内容 ≠ “”)
    .如果 (编辑框1.内容 ≠ “”)
      编辑框1.加入文本 (#换行符 + #换行符 + 时间到文本 (取现行时间 (), 2) + “ ” + 时间到文本 (取现行时间 (), 3) + #换行符 + #换行符 + 显示内容)
    .否则
      编辑框1.加入文本 (时间到文本 (取现行时间 (), 2) + “ ” + 时间到文本 (取现行时间 (), 3) + #换行符 + #换行符 + 显示内容)
    .如果结束

.如果真结束


.子程序 _按钮1_被单击

日志记录并显示 (“按钮1 被单击!”, “按钮1 被单击!”)

.子程序 _按钮2_被单击

日志记录并显示 (“按钮2 被单击!”, “按钮2 被单击!”)

.子程序 _按钮3_被单击

日志记录并显示 (“按钮3 被单击!”, “按钮3 被单击!”)

.子程序 _按钮4_被单击

日志记录并显示 (“按钮4 被单击!”, “按钮4 被单击!”)

.子程序 __启动窗口_将被销毁

日志记录并显示 (“软件手动关闭!”, )

.子程序 _按钮5_被单击
.局部变量 文件时间, 日期时间型
.局部变量 服务器时间, 日期时间型
.局部变量 找到的文件, 文本型
.局部变量 文件夹路径, 文本型
.局部变量 所找文件的路径, 文本型
.局部变量 超过天数, 文本型
.局部变量 删除数量, 整数型

文件夹路径 = 取运行目录 () + “\日志文件\”
找到的文件 = 寻找文件 (文件夹路径 + “*-日志.txt”, )
服务器时间 = 到时间 (到文本 (HTTP读文件 (“https://XXX.COM/sj.php”)))‘这里的网址是无效的,请输入自己的服务器网址,页面代码也将分享!
超过天数 = 编辑框2.内容
日志记录并显示 (“开始执行删除日志任务!”, “开始执行删除日志任务!”)
.如果 (服务器时间 ≠ 到时间 (“01000101”))
    .判断循环首 (找到的文件 ≠ “”)
      所找文件的路径 = 文件夹路径 + 找到的文件
      ' 输出调试文本 (到文本 (取文件时间 (所找文件的路径)))
      文件时间 = 取文件时间 (所找文件的路径)
      .如果真 (取时间间隔 (服务器时间, 文件时间, #日) > 到整数 (超过天数))
            删除文件 (所找文件的路径)
            删除数量 = 删除数量 + 1
            日志记录并显示 (“成功删除超过” + 超过天数 + “天的日志文件-” + 找到的文件, “成功删除超过” + 超过天数 + “天的日志文件-” + 找到的文件)
            ' 输出调试文本 (到文本 (取时间间隔 (系统时间, 文件时间, #日)))
      .如果真结束

      找到的文件 = 寻找文件 (, )
    .判断循环尾 ()
    .如果 (删除数量 = 0)
      日志记录并显示 (“任务失败!未能删除” + 超过天数 + “天前日志,因为没有可删除文件!”, “任务失败!未能删除” + 超过天数 + “天前日志,因为没有可删除文件!”)
      信息框 (“未找到超过” + 超过天数 + “天的日志文件!”, 16, “删除失败”, )

    .否则
      日志记录并显示 (“删除日志任务执行完毕!共删除” + 到文本 (删除数量) + “个日志。”, “删除日志任务执行完毕!共删除” + 到文本 (删除数量) + “个日志。”)
      信息框 (“删除成功!共删除” + 到文本 (删除数量) + “个日志。”, 0, , )
    .如果结束

.否则
    日志记录并显示 (“任务失败!未能删除” + 超过天数 + “天前日志,因为与服务器通讯失败!”, “任务失败!未能删除” + 超过天数 + “天前日志,因与服务器通讯失败!”)
    信息框 (“未能获取当前服务器时间或请检查您的网络!”, 16, “与服务器通讯失败!”, )

.如果结束


.子程序 目录说明

.如果真 (到文本 (读入文件 (取运行目录 () + “\日志文件\目录说明.txt”)) = “”)
    创建目录 (取运行目录 () + “\日志文件”)
    写到文件 (取运行目录 () + “\日志文件\目录说明.txt”, 到字节集 (#日志目录说明))

.如果真结束
.如果真 (到文本 (读入文件 (取运行目录 () + “\数据库\目录说明.txt”)) = “”)
    创建目录 (取运行目录 () + “\数据库”)
    写到文件 (取运行目录 () + “\数据库\目录说明.txt”, 到字节集 (#数据库目录说明))
.如果真结束

返回 ()

PHP网页获取服务器时间源码如下:
<?php
date_default_timezone_set('PRC'); //设置时区为中国
echo Date("YmdHis") //你可以自己改需要显示的格式,Y年、m月、d日、H时、i分、s秒,但是如果仅是为了让软件获取时间节点,最简单的还是什么都不加,利用代码“到时间()"直接获取文本值
?>

冰王子 发表于 2020-3-29 20:24

这是干啥的?

ps1989 发表于 2020-3-29 20:40

冰王子 发表于 2020-3-29 20:24
这是干啥的?

软件的日志板块
页: [1]
查看完整版本: 【学习分享】完整易语言日志源码-感谢各位大佬指点!