读书人

想得到一个样式201111080001解决思路

发布时间: 2012-01-24 23:11:54 作者: rapoo

想得到一个样式201111080001
想得到一个样式201111080001 ,像这样的一个样式。
今天的日期(年月日)+一个数(格式XXXX)

比如传过来数字是12.
那面以今天的日期。要得到的字符串是201111080012.
注意的是前八位是今天的日期。后四位是数字,不足的位数以0填充。

我想要2种方式,一种是java方式解决。
还有一种是oracle的sql方式解决。

[解决办法]
java方式代码

Java code
public class StringFormatDemo {    public static String format(int number){        Date date=new Date();        DateFormat df=new SimpleDateFormat("yyyyMMdd");        String s1=df.format(date);        NumberFormat nf=new DecimalFormat("0000");        String s2=nf.format(number);        return s1+s2;    }    public static void main(String[] args) {        System.out.println(format(1));    }}
[解决办法]
have a try
Java code
int id = 12;String s = String.format("%tF%04d", new Date(), id).replaceAll("-", "");System.out.println(s);
[解决办法]
orcale
SQL code
select to_char(sysdate, 'YYYYMMDD') | to_char(id, '0000') from dual
[解决办法]
select replace(to_char(sysdate, 'YYYYMMDD') || to_char(1, '0000'),' ','') from dual

读书人网 >J2SE开发

热点推荐