数据库中表的ID为4位数字,如:0001,0012,0123,1234
如果插入的值不满足4位,需要进行转换,有两种方法
第一种方法以:
int n = 1;
NumberFormat formatter = NumberFormat.getNumberInstance();
formatter.setMinimumIntegerDigits(4);
formatter.setGroupingUsed(false);
String s = formatter.format(n);
System.out.println(s);
第二方法以:
int n = 1;
String str1 = String.format(" %04d", n);
System.out.println(str1);
最近在做一个视频转图片,在生成图片的时候发现它不会根据位数自动补0。导致后面循环迭代图片文件的时候出现了问题。根据上面第二个方法,找到了解决方法。
int lenght = ff.getLengthInFrames(); // 总帧数
Integer al = lenght;
int num = al.toString().length(); // 总帧数的长度
for (int i = 1; i <= lenght; i++) {
String no = String.format("%0" + num + "d", i); // 根据总帧数的长度自动在序号前补0
File targetFile = new File(imgName + "_" + no + ".jpg");
}