SampleDateFormat进行日期格式化
我们生成的日期 ,可能不是我们想要的格式,这时候,就要用到SampleDateFormat类的format方法转换一下,
SampleDateFormat是java.text包下的一个常用日期类
这个常用类的常用方法,我们经常会用到2个
parse(String text, ParsePosition pos)
解析字符串的文本,生成 Date。
format(Date date, StringBuffer toAppendTo, FieldPosition pos)
将给定的 Date 格式化为日期/时间字符串,并将结果添加到给定的 StringBuffer。
实例:录入会员的生日时,形式必须是"月/日",如"09/12";录入的密码必须在6~10位,允许用户重复录入,直到输入正确为止
代码如下:
//用户类
package changyonglei.homework;
/**
* 录入会员的生日时,形式必须是"月/日",如"09/12";录入的密码必须在6~10位,允许用户重复录入,直到输入正确为止
*/
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date; public class Vip{
private String vipdate;//会员生日
private String password;//会员密码
public Vip() {
}
public Vip(String vipdate, String password) {
this.vipdate = vipdate;
this.password = password;
}
public String getVipdate() {
return vipdate;
}
public void setVipdate(String vipdate) {
//指定格式
SimpleDateFormat date=new SimpleDateFormat("MM/DD");
try{
Date date1 =date.parse(vipdate);//解释字符串的文本,生成date
date.format(date1);//将给定的 Date 格式化为我们定义的日期/时间字符串
this.vipdate=vipdate;
}catch(Exception e){
System.err.println("日期格式输入有误!");
}
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
if(password.length()>=6 && password.length()<=10){
this.password = password;
}else{
System.err.println("密码形式输入有误!");
} } }
//测试类
package changyonglei.homework; import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner; /**
* 对录入的信息进行有效性的验证
* 录入会员的生日时,形式必须是"月/日",如"09/12";录入的密码必须在6~10位,允许用户重复录入,直到输入正确为止
* @author 0
*
*/
public class TestVip {
public static void main(String[] args) throws ParseException {
Scanner input=new Scanner(System.in);
Vip vip=new Vip();
String day;
//进来先输入生日,如果为空,继续输入生日,如果不为空,则开始输入密码
boolean flag; //进行会员生日验证
do{
System.out.println("请输入生日<MM/DD>:");
day=input.next();
vip.setVipdate(day);
if(vip.getVipdate()!=null){
//进行密码验证
String pwd;
do{
System.out.println("请输入密码:");
pwd=input.next();
vip.setPassword(pwd);
}while(vip.getPassword()==null);
flag=false;
}else{
flag=true;
}
//如果符合规则则会执行日期 转换,那么就能set进值,如果不符合规则,就是空,所以我们判断日期为空的时候继续循环
}while(flag); System.out.println("程序结束!"); }
}
结果:

SampleDateFormat进行日期格式化的更多相关文章
- C# DateTime日期格式化
在C#中DateTime是一个包含日期.时间的类型,此类型通过ToString()转换为字符串时,可根据传入给Tostring()的参数转换为多种字符串格式. 目录 1. 分类 2. 制式类型 3. ...
- Json.net日期格式化
1. 全局设置,可以在App_Global中配置 JsonSerializerSettings setting = new JsonSerializerSettings(); JsonConvert. ...
- 分享自己写的JS版日期格式化和解析工具类,绝对好用!
前言 本来想模仿Java里面的SimpleDateFormat()对象的,但是感觉这样用起来不方便,所以还是直接写成单独的方法算了. 原文链接 日期格式化 使用说明 formatDate(date, ...
- Oracle 英文 非标准格式 日期 格式化
最近在处理一张表的时候,需要按照日期排序,日期字段中日期的格式有两种. 格式一:07-Aug-2015 格式二:10/28/16 日期转化及格式化sql语句: select to_date('07-A ...
- Sql Server 日期格式化函数
Sql Server 中一个非常强大的日期格式化函数Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AMSelect CONVE ...
- django 过滤器、日日期格式化参数
转载:http://blog.csdn.net/xyp84/article/details/7945094 django1.4 html页面从数据库中读出DateTimeField字段时,显示的时间格 ...
- 161226、js日期格式化
JavaScript Date format(js日期格式化) 方法一:// 对Date的扩展,将 Date 转化为指定格式的String // 月(M).日(d).小时(h).分(m).秒(s).季 ...
- Sql Server 中一个非常强大的日期格式化函数
Sql Server 中一个非常强大的日期格式化函数Select CONVERT(varchar(100), GETDATE(), 0)-- 05 16 2006 10:57AMSelect CONV ...
- SQL Server中的日期格式化
SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm 例如: select getdate() 2004-09-12 11:06:08 ...
随机推荐
- CUDA1.1-函数类型限定符与变量类型限定符
这部分来自于<CUDA_C_Programming_Guide.pdf>,看完<GPU高性能变成CUDA实战>的第四章,觉得这本书还是很好的,是一种循序渐进式的书,值得看,而不 ...
- 深入学习JavaScript(二)
函数表达式和函数声明 函数声明 function 函数名(参数){函数体} 函数表达式 function 函数名(可选)(参数){函数体} 示例: function foo(){} // 声明,因为它 ...
- iOS--更新cooped库
- js中奇特的for循环写法
//正常的for循环 for(var i=0;i<10;i++){ console.log(i); } //输出:1,2,3……10 //简写 for(var i=10;i--;){ conso ...
- Python基础-字符串格式化_百分号方式_format方式
Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...
- Beta项目冲刺 --第二天
在几kb的上传速度中苦苦挣扎的程序员... 队伍:F4 成员:031302301 毕容甲 031302302 蔡逸轩 031302430 肖阳 031302418 黄彦宁 会议内容: 1.站立式会议照 ...
- 在Word2013中多次应用格式刷
顾名思义,格式刷是为了方便需要跨区域操作时候,能快速的应用格式到相应文本.那么怎么使用word进行格式刷的多次使用呢.我们先来看单次的,这个比较容易,只要在先需要的格式单击一次格式刷,再到需要的文本执 ...
- canvas拖动
var canvas=document.getElementById("canvas"); var cxt=canvas.getContext("2d"); v ...
- extJs学习基础 容器的介绍
Viewport: 一个专门的容器用于可视应用领域(浏览器窗口). Viewport渲染自身到网页的documet body区域, 并自动将自己调整到适合浏览器窗口的大小,在窗口大小发生改变时自动适应 ...
- Linux System and Performance Monitoring
写在前面:本文是对OSCon09的<Linux System and Performance Monitoring>一文的学习笔记,主要内容是总结了其中的要点,以及加上了笔者自己的一些理解 ...