android开发必备日志打印工具类
今天给大家献上一款好用的日志打印工具。大家在平时的开发中用的最多的可能就是Log.i("",""),Log.e("","")...
,在要查看的日志比较少的情况下,这种方法用起来确实方便,很容易写,也很容易查看,然而不知道大家有没有遇到过这样一种情况,如果你要查看的数据量非常大,然后用Log类打印出来以后,却发现只显示了一部分数据,大部分数据被截断了。
是的,log打印出来的日志长度是有限的,我之前由于要分析一段从服务器获取的数据,数据量比较大,用log类打印之后只能看到一部分数据,大部分数据都被截断了,后来就自己写了一个日志打印工具类,把日志打印到手机SD卡上,这样就能看到完整的数据,该工具我已封装好,分享给大家。
public class LogTools {
public static void dailyLog(String title, String log) {
try {
// 如果外部存储卡存在且可读写
if (Environment.getExternalStorageState().equals(
Environment.MEDIA_MOUNTED)) {
Date date = new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd");
SimpleDateFormat tf = new SimpleDateFormat("HH:mm:ss:SSS");
String path = Environment.getExternalStorageDirectory()
.getAbsolutePath()
+ File.separator
+ "mylog"
+ File.separator
+ "debuglog["
+ df.format(date)
+ "]"
+ ".txt";
File file = new File(path);
// 如果文件不存在,则重新创建
if (!file.exists()) {
// 最后一级是文件,前面是路径,如果路径不存在则创建路径
if (!file.getParentFile().exists()) {
file.getParentFile().mkdirs();
}
// 创建日志文件
file.createNewFile();
}
//写日志
FileWriter fw = new FileWriter(file, true);
fw.flush();
fw.write("\n[" + df.format(date) +"--"+ tf.format(date) + "]\n");
fw.write(title + ": " + log);
fw.write("\n\n");
fw.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
调用:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
LogTools.dailyLog("我的日志", "----33222211111111118838777777777777766666666666444444444");
}
}
本工具源码下载
版权声明:本文为博主原创文章,未经博主允许不得转载。若有错误地方,还望批评指正,不胜感激。
蓝天为路,阳光满屋。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?