Class I18nReadWrite

java.lang.Object
cn.sinozg.applet.tool.i18n.I18nReadWrite

public class I18nReadWrite extends Object
国际化 vue 和java 读取本地文件 翻译后 写成其他语言的文件
Since:
2024-11-07 23:17
Author:
xyb
  • Field Details

  • Constructor Details

    • I18nReadWrite

      public I18nReadWrite()
  • Method Details

    • readConfig

      public static <T> List<List<T>> readConfig(ReadConfigParams<T> params)
      读取配置文件转为excel数据
      Type Parameters:
      T - 类型
      Parameters:
      params - 参数
      Returns:
      数据
    • importExcel

      public static void importExcel(WriteConfigParams params)
      打印excel 表格的国际化数据
      Parameters:
      params - 参数
    • readDict

      private static List<I18nInfo> readDict(List<DictI18n> list)
      读取标准数据
      Parameters:
      list - 标准数据
      Returns:
      可以导出的数据
    • updateDict

      private static void updateDict(WriteConfigParams params)
      更新数据库的标准数据
      Parameters:
      params - 参数
    • writeJavaWithCn

      private static List<String> writeJavaWithCn(List<I18nInfo> list, String type, I18nTp tp)
      以中文为模板打印
      Parameters:
      list - 数据集合
      type - 数据类型,验证 消息等
      tp - 要写的语言
      Returns:
      返回的配置
    • writeToVue

      private static Map<String,String> writeToVue(List<I18nInfo> list, I18nTp tp, String path)
      写vue 配置文件
      Parameters:
      list - 结合
      tp - 类型
      Returns:
      模块和对应的 json 公共模块key 为app
    • readVue

      private static List<I18nInfo> readVue(String path)
      读取本地vue 国际化配置文件
      Parameters:
      path - 文件目录
      Returns:
      国际化信息
    • readApp

      private static Map<String,List<I18nInfo>> readApp(String path)
      读取app的国际化配置
      Parameters:
      path - 路径
      Returns:
      配置
    • printRoute

      private static void printRoute(WriteConfigParams params)
    • i18nValueMap

      private static Map<I18nTp,Map<String,Object>> i18nValueMap(String path)
      读取vue的配置文件 转为语言对应的数据
      Parameters:
      path - 路径
      Returns:
    • toJsJson

      private static String toJsJson(Object obj)
      获取到 js格式的json
      Parameters:
      obj - 对象
      Returns:
      json
    • firstValueIsMap

      private static boolean firstValueIsMap(Object v)
      判断map是不是 子模块
      Parameters:
      v - 值
      Returns:
      是否子模块
    • setMap

      private static void setMap(I18nInfo ii, Function<I18nInfo,String> value, Map<String,Object> map)
      以逗号分割 写值到map对象 平铺
      Parameters:
      ii - 国际化值
      value - 对应的语言
      map - map
    • isVue

      private static void isVue(File file, String rootPath)
      判断是否为vue
      Parameters:
      file - 文件
      rootPath - 根目录
    • toMap

      private static void toMap(Map<String,Object> map, String key, BiConsumer<I18nInfo,String> bc, Map<String,I18nInfo> result)
      将map转为国际化数据
      Parameters:
      map - map对象
      key - key
      bc - 语言 对应的set函数
      result - 结果
    • readJavaI18n

      private static Map<String,List<I18nInfo>> readJavaI18n(Map<String,List<String>> map, boolean sort)
      获取到java 的国际化配置 转为 验证 和异常 的map对象
      Parameters:
      map - 解析出来的
      sort - 排序
      Returns:
      最后结果
    • readJavaI18n

      private static Map<String,List<String>> readJavaI18n()
      获取到java 的国际化配置
      Returns:
      国际化类型_语言 所有的数据
    • key

      private static String key(String name)
      根据文件名称 组成key
      Parameters:
      name - 文件名称
      Returns:
      key
    • appendColon

      private static Map<String,Object> appendColon(StringBuilder sb)
      将 vue配置的 国际化文件内容 转为 标准的json 最后转为map
      Parameters:
      sb - 数据
      Returns:
      map
    • vueJson

      private static void vueJson(File file, String rootPath, String fm)
      读取国际化vue的js 文件 根目录的 取第二个 {}内的数据 其他的取第一层 {},再在外层加上 模块
      Parameters:
      file - 文件
      rootPath - 根目录
      fm - 文件名称
    • recursionSet

      private static void recursionSet(Map<String,Object> structure, Map<String,Object> vm)
      将新值设置到map中
      Parameters:
      structure - 原有的结构map
      vm - 新值map
    • getFun

      private static Function<I18nInfo,String> getFun(I18nTp tp)
      根据类型获取到 get
      Parameters:
      tp - 语言
      Returns:
      函数
    • setFun

      private static BiConsumer<I18nInfo,String> setFun(I18nTp tp)
      获取到set的函数
      Parameters:
      tp - 语言
      Returns:
      函数
    • i18nPair

      private static I18nSetGet i18nPair(I18nTp tp)