中易网

java中自动生成有规律的编号

答案:2  悬赏:0  
解决时间 2021-12-12 16:32
java中自动生成有规律的编号,例如例如2015080001,2015080002,而且每个月的第一个编号必须是xxxxxx0001,前面六位是当前年月
最佳答案
实现思路:在本地存储一个文本文件用于记录上一次的编号序数,生成编号时从文件里读出编号序数后加一,并把结果保存回文件中以备下次生成使用。如此处理即可达成需求,具体代码如下(运行环境:jdk8或以上):

package com.file;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.time.LocalDate;


public class NoCreater {

public static void main(String[] args) {
System.out.println(next());
}


public static String next() {
File file = getCountFile();
try (BufferedReader fr = new BufferedReader(new FileReader(file))) {
int nextNum = Integer.valueOf(fr.readLine()) + 1;
try (FileOutputStream fos = new FileOutputStream(file)) {
fos.write(String.valueOf(nextNum).getBytes());
}
String next = "";
if (nextNum / 10 < 1) {
next += "000" + nextNum;
} else if (nextNum / 100 < 1) {
next += "00" + nextNum;
} else if (nextNum / 1000 < 1) {
next += "0" + nextNum;
} else {
next += nextNum;
}
int year = LocalDate.now().getYear();
int month = LocalDate.now().getMonthValue();
return year + "" + month + next;
} catch (IOException e) {
e.printStackTrace();
return "生成编号出错";
}
}

private static File getCountFile() {
File file = new File("count.txt");
if (!file.exists()) {
try {
file.createNewFile();
try (FileOutputStream fos = new FileOutputStream(file)) {
fos.write("0".getBytes());
}
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
return file;
}
}
全部回答
public class main { private static long n = 1; public static void main(string[] args) { system.out.println(test(n)); system.out.println(test(n)); } public static long test(long l) { string str = new simpledateformat("yyyymm") .format(new java.util.date()); long m = long.parselong((str)) * 10000; long ret = m + l; n = l + 1; return ret; } }
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
脩龄的意思是什么?脩龄的释义是什么啊?
《名侦探柯南之警察故事》最新txt全集下载
数控折弯机角度问题
胜侣的意思是什么啊?请解释下!
用C语言编写一个“吃草的兔子”的游戏程序代
策试的意思是什么?策试的释义是什么啊?
优口净水机有用吗,划算不?
大众汽车车载娱乐系统死机怎么办
老婆出轨离婚是否还能分得一半财产
刘华在计算一个数减去75时,不小心把减号看成
桂林??訾州岛】【南溪山】【义江缘景区】【杉
澹如的意思是什么啊?请解释下!
23252CA/W33的轴承的技术参数器,内外圈的硬
自系的意思是什么?自系的释义是什么啊?
经常在网上看到一些化妆品的替换装,请问是什
推荐资讯
龙珠z电光火石3PS2出招表
佐证的意思是什么?佐证的释义是什么啊?
施集乡财政所地址在哪,我要去那里办事
梦幻西游怎么老需要用修复器修复后才能玩
九龙坡区民政局地址在什么地方,想过去办事
华为官方旗舰店的手机能在官网退吗
常德市公安局交通警察支队直属三大队地址在什
加工钢件、铸铁件。卧式加工中心选用哪个品牌
军标的意思是什么?军标的释义是什么啊?
烹割的意思是什么啊?请解释下!
北京幼儿园教师要考在职研究生都需要做哪些准
定员的意思是什么?定员的释义是什么啊?
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?