解决排序报错问题

master
zhanghai 2 years ago
parent 0e7555a932
commit 46020ff26e

@ -16,6 +16,7 @@ import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.math.BigInteger;
import java.nio.file.Files;
import java.nio.file.StandardCopyOption;
import java.util.*;
@ -193,16 +194,16 @@ public class CheckService {
@Override
public int compare(CheckPageRow file1, CheckPageRow file2) {
// 使用正则表达式提取数字部分
long num1 = extractNumber(file1.getPhNum());
long num2 = extractNumber(file2.getPhNum());
BigInteger num1 = extractNumber(file1.getPhNum());
BigInteger num2 = extractNumber(file2.getPhNum());
// 比较提取的数字部分
return Long.compare(num1, num2);
return num1.compareTo( num2);
}
private long extractNumber(String fileName) {
private BigInteger extractNumber(String fileName) {
String numberPart = fileName.replaceAll("[^0-9]", "");
return numberPart.isEmpty() ? 0 : Long.parseLong(numberPart);
return numberPart.isEmpty() ? new BigInteger("0") :new BigInteger(numberPart);
}
};
Collections.sort(checkPageRows,fileComparator);

@ -35,7 +35,7 @@ public class JpmTest {
Date date = directory.getDate(ExifSubIFDDirectory.TAG_DATETIME_ORIGINAL);
}
public static void main(String[] args) throws ImageProcessingException, IOException, ImageReadException {
File file = new File("C:\\Users\\zhanghai\\Downloads\\微信图片_20231203095721.jpg");
File file = new File("C:\\Users\\zhanghai\\Documents\\WeChat Files\\wxid_wexo4ubjorso22\\FileStorage\\File\\2024-01\\2285.tif");
ImageInfo imageInfo = Imaging.getImageInfo(file);
int height = imageInfo.getHeight();
int width = imageInfo.getWidth();

Loading…
Cancel
Save