| | |
| | | |
| | | boolean isShp = StaticData.SHP.equals(extName); |
| | | if (isGdb) { |
| | | String md5 = getGdbMd5(f.getPath()); |
| | | List<MetaFileEntity> rs = getGdbMappers(f, meta); |
| | | if (null != rs && rs.size() > 0) { |
| | | list.addAll(rs); |
| | | } |
| | | continue; |
| | | } |
| | | |
| | |
| | | /** |
| | | * 获取多文件的MD5 |
| | | */ |
| | | private String getFilesMd5(List<String> list) { |
| | | StringBuilder sb = new StringBuilder(); |
| | | for (String str : list) { |
| | | private String getFilesMd5(List<String> strs) { |
| | | List<String> list = new ArrayList<>(); |
| | | for (String str : strs) { |
| | | String md5 = FileHelper.getFileMd5(str); |
| | | if (null != md5) { |
| | | sb.append(sb + ","); |
| | | list.add(md5); |
| | | } |
| | | } |
| | | |
| | | if (sb.length() > 0) { |
| | | return FileHelper.getStringMd5(sb.toString()); |
| | | if (list.size() > 0) { |
| | | String str = StringHelper.join(list, ","); |
| | | return FileHelper.getStringMd5(str); |
| | | } |
| | | |
| | | return StringHelper.getGuid(); |
| | | } |
| | | |
| | | private void getGdbFiles(String shpPath, List<String> list) { |
| | | File file = new File(shpPath); |
| | | |
| | | File[] files = file.listFiles(); |
| | | if (null == files || files.length == 0) { |
| | | return; |
| | | /** |
| | | * 获取GDB文件映射 |
| | | */ |
| | | private List<MetaFileEntity> getGdbMappers(File f,MetaFileEntity meta) { |
| | | List<String> tabs = GdbHelper.getTabNames(f.getPath()); |
| | | if (null == tabs || tabs.size() == 0) { |
| | | return null; |
| | | } |
| | | |
| | | for (File f : files) { |
| | | if (!f.isDirectory()) { |
| | | continue; |
| | | } |
| | | |
| | | if (isGdbFile(f)) { |
| | | list.add(f.getPath()); |
| | | continue; |
| | | } |
| | | |
| | | getGdbFiles(f.getPath(), list); |
| | | String md5 = getGdbMd5(f.getPath()); |
| | | for (String tab : tabs) { |
| | | // |
| | | } |
| | | |
| | | return null; |
| | | } |
| | | |
| | | /** |