From ba84a556dc93fcf75e6ec76f999344d3f96ad788 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期五, 02 二月 2024 18:05:24 +0800 Subject: [PATCH] 2024年02月02日18:04:36 --- app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java | 78 +++++++++++++++++++++++++++++++++++--- 1 files changed, 71 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java index d45e982..4da2e3d 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java @@ -1,8 +1,11 @@ package com.hdl.photovoltaic.other; +import android.content.Context; +import android.content.res.AssetManager; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Environment; +import android.text.TextUtils; import com.hdl.photovoltaic.HDLApp; import com.hdl.photovoltaic.config.UserConfigManage; @@ -15,6 +18,7 @@ import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; +import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.util.Objects; @@ -27,9 +31,9 @@ private static volatile HdlFileLogic sHdlFileLogic; /** - * 琛ㄧず1m澶у皬鏁版嵁 + * 琛ㄧず0.5m澶у皬鏁版嵁 */ - private final int mDataSize = 1; + private final double mDataSize = 0.5; /** * 鑾峰彇褰撳墠瀵硅薄 @@ -311,15 +315,43 @@ d.flush(); d.close(); if (file.length() > 1024 * 1024 * mDataSize) { - //鏂囦欢澶т簬1m,鍒犻櫎鏂囦欢鍓�10鏉℃棩蹇� - this.delFileLien(fullPath, 10); + //鏂囦欢澶т簬1m,鍒犻櫎鏂囦欢鍓�100鏉℃棩蹇� + this.delFileLien(fullPath, 100); } - System.out.println("鍐欏叆涓�琛屾暟鎹埌鏂囦欢鎴愬姛--->" + dataLine); +// System.out.println("鍐欏叆涓�琛屾暟鎹埌鏂囦欢鎴愬姛--->" + dataLine); } catch (Exception e) { - System.out.println("鍐欏叆涓�琛屾暟鎹埌鏂囦欢鏈夊紓甯�--->" + e.getMessage()); +// System.out.println("鍐欏叆涓�琛屾暟鎹埌鏂囦欢鏈夊紓甯�--->" + e.getMessage()); } } + + /** + * 璇诲彇鏂囦欢 + * + * @param filePath 鍏ㄨ矾寰� + * @return 鏁版嵁 + */ + public byte[] readFileByte1(String filePath) { + try { + if (!isBoolean(filePath)) { + return null; + } + File f = new File(filePath); + if (!f.exists()) { + return null; + } + FileInputStream fis = new FileInputStream(f); + byte[] bytes = FileUtils.readFileToByteArray(f);//杩欎釜鏂规硶涓嶅吋鐢╝ndroid 6.0 + fis.close(); + System.out.println("璇诲彇鏂囦欢鎴愬姛--->" + filePath); + return bytes; + } catch (Exception e1) { + System.out.println("璇诲彇鏂囦欢鏈夊紓甯�--->" + e1.getMessage()); + return null; + } + + } + /** * 璇诲彇鏂囦欢 @@ -337,7 +369,11 @@ return null; } FileInputStream fis = new FileInputStream(f); - byte[] bytes = FileUtils.readFileToByteArray(f); + BufferedInputStream bis = new BufferedInputStream(fis); + int fileLength = (int) f.length(); + byte[] bytes = new byte[fileLength]; + int len = bis.read(bytes); + bis.close(); fis.close(); System.out.println("璇诲彇鏂囦欢鎴愬姛--->" + filePath); return bytes; @@ -434,6 +470,34 @@ } /** + * 鎵撳紑璧勬簮鏂囦欢 + * + * @param fileName 鏂囦欢鍚� + * @param context 涓婁笅鏂� + * @return 杩斿洖json瀛楃涓� + */ + public String openAssetsFileJson(String fileName, Context context) { + if (TextUtils.isEmpty(fileName)) { + return ""; + } + //灏唈son鏁版嵁鍙樻垚瀛楃涓� + StringBuilder stringBuilder = new StringBuilder(); + try { + //鑾峰彇assets璧勬簮绠$悊鍣� + AssetManager assetManager = context.getAssets(); + //閫氳繃绠$悊鍣ㄦ墦寮�鏂囦欢骞惰鍙� + BufferedReader bf = new BufferedReader(new InputStreamReader(assetManager.open(fileName))); + String line; + while ((line = bf.readLine()) != null) { + stringBuilder.append(line); + } + } catch (IOException e) { + e.printStackTrace(); + } + return stringBuilder.toString(); + } + + /** * 鍒ゆ柇璺緞鏄惁鍚堟硶 * * @param path 璺緞 -- Gitblit v1.8.0