From 4db3692de0001eea35f938c1224181746e72933a Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期四, 27 十一月 2025 21:30:07 +0800
Subject: [PATCH] 支持创建阿拉伯语言的脚本文件夹

---
 app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java |   95 +++++++++++++++++++++++++++++++++++------------
 1 files changed, 70 insertions(+), 25 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 2382eef..4f91804 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java
@@ -8,7 +8,11 @@
 import android.text.TextUtils;
 
 import com.hdl.photovoltaic.HDLApp;
+import com.hdl.photovoltaic.config.ConstantManage;
 import com.hdl.photovoltaic.config.UserConfigManage;
+import com.hdl.photovoltaic.enums.Languages;
+import com.hdl.photovoltaic.ui.adapter.LanguageAdapter;
+import com.hdl.photovoltaic.utils.LocalManageUtil;
 
 import org.apache.commons.io.FileUtils;
 
@@ -21,6 +25,7 @@
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
+import java.util.List;
 import java.util.Objects;
 
 /**
@@ -85,7 +90,7 @@
     }
 
     /**
-     * 鑾峰彇瀛樻斁銆愰┍鍔ㄦ枃浠跺す銆戞牴璺緞
+     * 鑾峰彇瀛樻斁椹卞姩銆愭枃浠跺す銆戞牴璺緞
      */
     public String getDriveRootPath() {
         return getAPPInternalStoreFilesPath() + "/upgrade/drive";
@@ -93,30 +98,55 @@
 
 
     /**
-     * 鑾峰彇瀛樻斁銆愬浐浠舵枃浠跺す銆戞牴璺緞
+     * 鑾峰彇瀛樻斁鍥轰欢銆愭枃浠跺す銆戞牴璺緞
      */
     public String getFirmwareRootPath() {
         return getAPPInternalStoreFilesPath() + "/upgrade/firmware";
     }
 
 
+    /**
+     * 鑾峰彇json璧勬簮銆愭枃浠跺す銆戝叏璺緞
+     *
+     * @param language    璇█ 閫氳繃鏋氫妇绫籐anguages.en鑾峰彇
+     * @param deviceModel 璁惧鍨嬪彿
+     */
+    public String getHdlESLocalJsonRootPath(String language, String deviceModel) {
+        return getAPPInternalStoreFilesPath() + "/hdlESLocalJson/" + language + "/" + deviceModel;
+    }
+
 
     /**
-     * 鑾峰彇銆愭棩蹇楁枃浠躲�戝叏璺緞
+     * 鑾峰彇鏃ュ織銆愭枃浠躲�戝叏璺緞
      */
     public String getLogFileNamePath() {
         return getCurrentHomeRootPath() + "/log.txt";
     }
 
+
     /**
-     * 鑾峰彇銆愮敤鎴锋枃浠躲�戝叏璺緞
+     * 鑾峰彇鐢ㄦ埛銆愭枃浠躲�戝叏璺緞
      */
     public String getUserFilePath() {
         return getAPPInternalStoreFilesPath() + "/userConfigManage.txt";
     }
 
     /**
-     * 鑾峰彇椹卞姩鍗囩骇鏂囦欢鍏ㄨ矾寰�
+     * 鑾峰彇鏈湴璇█json璧勬簮銆愭枃浠躲�戝叏璺緞
+     *
+     * @param language    璇█ 閫氳繃鏋氫妇绫籐anguages.en鑾峰彇
+     * @param deviceModel 璁惧鍨嬪彿
+     * @param fileName    鏂囦欢鍚�
+     */
+    public String getHdlESLocalLanguageJsonFilePath(String language, String deviceModel, String fileName) {
+        if (!fileName.endsWith(".json")) {
+            fileName += ".json";
+        }
+        return getAPPInternalStoreFilesPath() + "/hdlESLocalJson/" + language + "/" + deviceModel + "/" + fileName;
+    }
+
+    /**
+     * 鑾峰彇椹卞姩鍗囩骇銆愭枃浠躲�戝叏璺緞
      *
      * @param driverCode 椹卞姩缂栫爜
      * @param version    椹卞姩鐗堟湰
@@ -128,7 +158,7 @@
     }
 
     /**
-     * 鑾峰彇鍥轰欢鍗囩骇鏂囦欢鍏ㄨ矾寰�
+     * 鑾峰彇鍥轰欢鍗囩骇銆愭枃浠躲�戝叏璺緞
      *
      * @param imageId 闀滃儚id
      * @param version 椹卞姩鐗堟湰
@@ -144,7 +174,7 @@
     //region    ---------銆愭枃浠跺す銆戞搷浣�-----------
 
     /**
-     * 棰勫垱寤烘枃浠跺す
+     * 棰勫垱寤恒�愭枃浠跺す銆�
      */
     public void createDirectory() {
         //瀛樻斁浣忓畢淇℃伅
@@ -153,11 +183,26 @@
         this.createFileDir(this.getDriveRootPath());
         //鍥轰欢鏂囦欢
         this.createFileDir(this.getFirmwareRootPath());
+    }
+
+    /**
+     * 棰勫垱寤鸿澶噅son璧勬簮銆愭枃浠跺す銆�
+     */
+    public void createHdlDeviceModelLocalJsonDirectory() {
+        List<LanguageAdapter.ItemData> languageList = LocalManageUtil.getLanguageList();
+        List<String> deviceModelList = HdlESLocalJsonLogic.getInstance().getModelList();
+        for (int i = 0; i < languageList.size(); i++) {
+            LanguageAdapter.ItemData languageModel = languageList.get(i);
+            for (int j = 0; j < deviceModelList.size(); j++) {
+                String deviceModel = deviceModelList.get(j);
+                this.createFileDir(this.getHdlESLocalJsonRootPath(languageModel.getLanguage(), deviceModel));//骞剁綉-閫嗗彉鍣�
+            }
+        }
 
     }
 
     /**
-     * 鍒涘缓鏂囦欢澶�
+     * 鍒涘缓銆愭枃浠跺す銆�
      *
      * @param fullPath fullPath 鍏ㄨ矾寰�
      * @return -
@@ -167,7 +212,7 @@
             File file = new File(fullPath);
             if (!file.isDirectory()) {
                 boolean succeed = file.mkdirs();
-                System.out.println("鍒涘缓鏂囦欢澶硅矾寰�--->" + file.getAbsolutePath() + "===鍒涘缓鏂囦欢澶圭粨鏋�--->" + succeed);
+                System.out.println("鍒涘缓鏂囦欢澶硅矾寰�---" + file.getAbsolutePath() + "===鍒涘缓鏂囦欢澶圭粨鏋�---" + succeed);
                 return succeed;
             }
             return true;
@@ -179,7 +224,7 @@
 
 
     /**
-     * 鍒犻櫎鏂囦欢澶�
+     * 鍒犻櫎銆愭枃浠跺す銆�
      *
      * @param fullPath 鍏ㄨ矾寰�
      */
@@ -200,7 +245,7 @@
             }
             // 鍒犻櫎鏂囦欢澶规湰韬�
             boolean succeed = fileRoot.delete();//鏂囦欢澶圭┖杩欎釜鏂规硶鎵嶆湁鏁�
-            System.out.println("鍒犻櫎鏂囦欢澶硅矾寰�--->" + fileRoot.getAbsolutePath() + "===鍒犻櫎缁撴灉--->" + succeed);
+            System.out.println("鍒犻櫎鏂囦欢澶硅矾寰�---" + fileRoot.getAbsolutePath() + "===鍒犻櫎缁撴灉---" + succeed);
         } catch (Exception e) {
             System.out.println("鍒犻櫎鏂囦欢澶规湁寮傚父===" + e.getMessage());
         }
@@ -213,7 +258,7 @@
     //region    ---------銆愭枃浠躲�戞搷浣�-----------
 
     /**
-     * 鍒涘缓鏂囦欢
+     * 鍒涘缓銆愭枃浠躲��
      *
      * @param fullPath 鍏ㄨ矾寰�
      * @return -
@@ -223,7 +268,7 @@
             File file = new File(fullPath);
             if (!file.exists()) {
                 boolean succeed = file.createNewFile();
-                System.out.println("鍒涘缓鏂囦欢璺緞--->" + file.getAbsolutePath() + "===鍒涘缓鏂囦欢缁撴灉--->" + succeed);
+                System.out.println("鍒涘缓鏂囦欢璺緞---" + file.getAbsolutePath() + "===鍒涘缓鏂囦欢缁撴灉---" + succeed);
                 return succeed;
             }
             return true;
@@ -234,7 +279,7 @@
     }
 
     /**
-     * 鍒犻櫎鏂囦欢
+     * 鍒犻櫎銆愭枃浠躲��
      *
      * @param fullPath 鍏ㄨ矾寰�
      * @return -
@@ -244,7 +289,7 @@
             File file = new File(fullPath);
             if (file.exists()) {
                 boolean succeed = file.delete();
-                System.out.println("鍒犻櫎鏂囦欢--->" + fullPath + "===缁撴灉--->" + succeed);
+                System.out.println("鍒犻櫎鏂囦欢---" + fullPath + "===缁撴灉---" + succeed);
                 return succeed;
             }
             return true;
@@ -275,9 +320,9 @@
             d.write(data);
             d.flush();
             d.close();
-            System.out.println("鍐欏叆鏂囦欢鎴愬姛--->" + fullPath);
+            System.out.println("鍐欏叆鏂囦欢鎴愬姛---" + fullPath);
         } catch (Exception e) {
-            System.out.println("鍐欏叆鏂囦欢鏈夊紓甯�--->" + e.getMessage());
+            System.out.println("鍐欏叆鏂囦欢鏈夊紓甯�---" + e.getMessage());
         }
 
     }
@@ -319,9 +364,9 @@
                 //鏂囦欢澶т簬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());
         }
 
     }
@@ -344,10 +389,10 @@
             FileInputStream fis = new FileInputStream(f);
             byte[] bytes = FileUtils.readFileToByteArray(f);//杩欎釜鏂规硶涓嶅吋鐢╝ndroid 6.0
             fis.close();
-            System.out.println("璇诲彇鏂囦欢鎴愬姛--->" + filePath);
+            System.out.println("璇诲彇鏂囦欢鎴愬姛---" + filePath);
             return bytes;
         } catch (Exception e1) {
-            System.out.println("璇诲彇鏂囦欢鏈夊紓甯�--->" + e1.getMessage());
+            System.out.println("璇诲彇鏂囦欢鏈夊紓甯�---" + e1.getMessage());
             return null;
         }
 
@@ -376,10 +421,10 @@
             int len = bis.read(bytes);
             bis.close();
             fis.close();
-            System.out.println("璇诲彇鏂囦欢鎴愬姛--->" + filePath);
+            System.out.println("璇诲彇鏂囦欢鎴愬姛---" + filePath);
             return bytes;
         } catch (Exception e1) {
-            System.out.println("璇诲彇鏂囦欢鏈夊紓甯�--->" + e1.getMessage());
+            System.out.println("璇诲彇鏂囦欢鏈夊紓甯�---" + e1.getMessage());
             return null;
         }
 
@@ -422,7 +467,7 @@
             fileLength = f.length();
             return new FileInputStream(f);
         } catch (Exception e1) {
-            System.out.println("璇诲彇鏂囦欢鏈夊紓甯�--->" + e1.getMessage());
+            System.out.println("璇诲彇鏂囦欢鏈夊紓甯�---" + e1.getMessage());
             return null;
         }
 
@@ -506,7 +551,7 @@
      */
     public boolean isBoolean(String path) {
         if (path.contains("//") || path.contains("\\")) {
-            System.out.println("鏃犳晥鏂囦欢璺緞--->" + path);
+            System.out.println("鏃犳晥鏂囦欢璺緞---" + path);
             return false;
         }
         return true;

--
Gitblit v1.8.0