|
|
@ -387,15 +387,29 @@ public class ProjectExcelUtil<T> {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
cellMap.entrySet().removeIf(entry -> hasStr.contains(entry.getKey()));
|
|
|
|
cellMap.entrySet().removeIf(entry -> hasStr.contains(entry.getKey()));
|
|
|
|
StringBuilder str = new StringBuilder();
|
|
|
|
StringBuilder str = new StringBuilder();
|
|
|
|
|
|
|
|
Map<String,String> sortHash = new HashMap<>();
|
|
|
|
str.append("{");
|
|
|
|
str.append("{");
|
|
|
|
for (Map.Entry<String, Integer> entry : cellMap.entrySet()) {
|
|
|
|
for (Map.Entry<String, Integer> entry : cellMap.entrySet()) {
|
|
|
|
String key1 = entry.getKey();
|
|
|
|
String key1 = entry.getKey();
|
|
|
|
Object val1 = this.getCellValue(row, entry.getValue());
|
|
|
|
Object val1 = this.getCellValue(row, entry.getValue());
|
|
|
|
if (val1 == "" || val1 == null) {
|
|
|
|
sortHash.put(key1, String.valueOf(val1));
|
|
|
|
val1 = null;
|
|
|
|
}
|
|
|
|
str.append('"').append(key1).append('"').append(":").append(val1).append(",");
|
|
|
|
// 自定义比较器按值排序
|
|
|
|
|
|
|
|
Comparator<Map.Entry<String, String>> customComparator = Comparator.comparingInt(entry -> entry.getValue().length());
|
|
|
|
|
|
|
|
Map<String, String> sortedMap = sortHash.entrySet().stream()
|
|
|
|
|
|
|
|
.sorted(customComparator)
|
|
|
|
|
|
|
|
.collect(Collectors.toMap(
|
|
|
|
|
|
|
|
Map.Entry::getKey,
|
|
|
|
|
|
|
|
Map.Entry::getValue,
|
|
|
|
|
|
|
|
(oldVal, newVal) -> oldVal,
|
|
|
|
|
|
|
|
LinkedHashMap::new
|
|
|
|
|
|
|
|
));
|
|
|
|
|
|
|
|
for (Map.Entry<String, String> entry : sortedMap.entrySet()) {
|
|
|
|
|
|
|
|
if (Objects.equals(entry.getValue(), "") || entry.getValue() == null) {
|
|
|
|
|
|
|
|
String nulls = null;
|
|
|
|
|
|
|
|
str.append('"').append(entry.getKey()).append('"').append(":").append(nulls).append(",");
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
str.append('"').append(key1).append('"').append(":").append('"').append(val1).append('"').append(",");
|
|
|
|
str.append('"').append(entry.getKey()).append('"').append(":").append('"').append(entry.getValue()).append('"').append(",");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
str.append("}");
|
|
|
|
str.append("}");
|
|
|
|