檔案儲存demo,直接儲存內容到本地中。
阿新 • • 發佈:2021-01-30
技術標籤:android&java工具類
把app String內容,儲存到本地文字中
用於: 儲存本地日誌等
demo示例:
package com.shbank.emobile.android.sit.bank.utils.log; import android.os.Environment; import android.util.Log; import com.shbank.emobile.android.sit.bank.utils.AppUtil; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.PrintWriter; import java.text.SimpleDateFormat; import java.util.Date; public class LogUtil { //路徑為 /sd卡路徑/你的App名稱/log.txt private static final String appName = "cloudcore/" + AppUtil.getAppPackageName(); private static File file; static { file = new File(Environment.getExternalStorageDirectory(), appName); if (!file.exists()) file.mkdirs(); file = new File(file, "log.txt"); } /** * 將文字追加寫入到檔案 */ public static void setAppendFile(String value){ // TODO: 2020/7/30 後續多渠道配置後修改 // if (CBuildConfig.envCtrl == Constant.ENV_PRODUCT) return; try{ FileWriter fw = new FileWriter(file, true); BufferedWriter bw = new BufferedWriter(fw); PrintWriter printWriter = new PrintWriter(bw); printWriter.print(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())+ ": "); printWriter.println(value); printWriter.close(); }catch (Exception e){ } } /** * 將異常資訊寫入到檔案 */ public static void setAppendFile(Throwable ex){//Throwable ex // TODO: 2020/7/30 後續多渠道配置後修改 // if (CBuildConfig.envCtrl == Constant.ENV_PRODUCT) return; try{ FileWriter fw = new FileWriter(file, true); BufferedWriter bw = new BufferedWriter(fw); PrintWriter printWriter = new PrintWriter(bw); printWriter.print(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + ": "); ex.printStackTrace(printWriter); printWriter.close(); }catch (Exception e){ } } public static void i(String tag, String message) { // TODO: 2020/7/30 後續多渠道配置後修改 // if (!CBuildConfig.debugEnabled) return;//非debug Log.i(tag, message); } public static void e(String tag, String message) { // TODO: 2020/7/30 後續多渠道配置後修改 // if (!CBuildConfig.debugEnabled) return;//非debug Log.e(tag, message); } }