输入字符串如 2008-06 就可以得到如下效果
时间:2008-06-12 10:10:33
来源:论坛整理 作者: 编辑:chinaitzhe
返回
2008-05
2008-04
2008-03
2008-02
2008-01
网友回复:自己顶
网友回复:得到月份,然后用Calendar的add
然后输出!
网友回复:把字符串转换为日期取月份 for(int i=6-1;i--;i>0)
网友回复:那跨年怎么办 楼上的方法不行
网友回复:我的方法就行!
自己写写看!
先通过SimpleDateFormat转换成日期格式
然后Calendar,然后add月份-1
然后得到日期再转换成字符串
网友回复:先把字符串转化成date类型,然后就简单了
网友回复:public static void StringToDate (String date){
SimpleDateFormat sd=new SimpleDateFormat("yyyy-MM");
try {
int month= sd.parse(date).getMonth() 1;
int year=1900 sd.parse(date).getYear();
for(int i=month-1;i>0;i--){
if(i <10){
System.out.println(year "-0" i);
}
}
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
网友回复:
jdk1.5 里的 getMonth() getYear(); 已经被废弃了
网友回复:有人写出代码了,我就不重复了.
只是要得到输入日的前五天日期,对吗?
网友回复:是前5个月
网友回复:追加80分 谁的程序采纳 给予追加80 加这个帖子的20
100分全部给作者
网友回复:顶一下
网友回复:算了,我帮你写个得了!
网友回复:谢谢你 写完 分都给你
网友回复:路过 关注
网友回复:
- Java code
Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ import java.text.SimpleDateFormat; import java.util.Calendar; public class Hello{ private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM"); public static void main(String args[]) throws Exception { String str = "2008-06"; System.out.println(sdf.parse(str)); for (int i = 0; i < 5; i ) { Calendar cal = Calendar.getInstance(); cal.setTime(sdf.parse(str)); cal.add(Calendar.MONTH, -1); str = sdf.format(cal.getTime()); System.out.println(sdf.format(cal.getTime())); } } }
网友回复:
2楼的方法是最正确的方法。
非常不建议用解析字符串,把月份弄成int加减的方法。
网友回复:
高手 我在开个贴子你来 把80分给你
请M_song 来接分
网友回复:
- Java code
Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; public class Test { public static void main(String[] args) throws ParseException { String input = "2008-03"; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM"); Calendar cal = Calendar.getInstance(); cal.setTime(sdf.parse(input)); for(int i=0;i<6;i ){ cal.add(Calendar.MONTH, -1); System.out.println(sdf.format(cal.getTime())); } } }
网友回复:假如说用字符串输出的话,那可以用解析字符串,把月份弄成int加减的方法。
假如说一日期的格式输出的话,2楼的做法是正确的
要看你是要怎么实现的
关键字:输入,字符串,得到,效果,
下一篇:下面没有链接了











文章评论
共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面