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(); } }
}</pre>
調用:public class MainActivity extends Activity {@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); LogTools.dailyLog("我的日志", "----33222211111111118838777777777777766666666666444444444"); }
}</pre>
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!