快速业务通道

格式化日期类SimpleDateFormat

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-10


下午自己写了个类,格式化日期类SimpleDateFormat。大家看看,交流一下。
初衷:Java中有这样的一个类SimpleDateFormat,构造一个对象的时候,制定显示的方式,就可以通过这个类的一个方法获得这种格式的当前日期。想想Flash中好象还没有这个功能,每次要获得日期还要调用Date中的n个方法,最后字符串拼凑才能得到想要的格式,感觉麻烦,开动脑筋,写了这个类。
使用:在flash中第一帧写上var sim = SimpleDateFormat("yyyy/MM/dd");
然后new一个日期对象var date = new Date();然后把date格式化,调用方法并显示出来:trace(sim.format(date))这样就可以得到型如这样yyyy/MM/dd的日期2004/07/03了,如果你在构造sim对象时这样写var sim = SimpleDateFormat("yy/MM/dd");就可以得到型如这样yy/MM/dd的日期04/07/03了,只要你想要什么样的格式,就在构造sim对象时写出他的格式就可以了。就是说,日期的分隔,和显示方式都可以由你自己任意指定。
这里有如下规定:
y表示年,yy表示显示2位,yyyy显示全部,
M表示月,都要用MM
d表示日,都要用dd
如果不要年月日其中的哪个也可以,就在构造时不写就可以了,比如说不要年,只显示月日就可以这样var sim = SimpleDateFormat("MM/dd");
具体代码如下,大家讨论,看有什么不当的地方,我再改正,到时再写一个详细教程,并把这个类提供给大家使用,一个咱们自己开发的类,自己用,呵呵。我还会写相关的一些类,希望有兴趣的朋友到时关注


/**
* Title: 格式化日期类
* Description:
* Company:
* Copyright
* @author wei386
* @version 1.0
*/
class SimpleDateFormat
{
private var timetype :String;
private var date:Date;
private var year:String;
private var month:String;
private var day:String;

function SimpleDateFormat(type:String)
{
this.timetype=type;
}
/**
* 得到包含字符串firststring的开始位置
* @param String firststring
* @return Number
*/
private function firstString(firststring:String):Number
{
var starts:Number = timetype.indexOf(firststring);
return starts;
}
/**
* 得到包含字符串firststring的结束位置
* @param String firststring
* @return Number
*/
private function lastString(laststring:String):Number
{
var ends:Number = timetype.lastIndexOf(laststring);
return ends;
}
/**
* 查找是否年
* @param
* @return Boolean
*/
private function findYear():Boolean
{
var starts = this.firstString("y");
var ends = this.lastString("y");
var yeartype = ends-starts;
if(yeartype==3)
{
this.year=""+this.date.getFullYear();
return true;
}else if(yeartype==1)
{
var shortyear :String= ""+this.date.getFullYear();
this.year = shortyear.substring(2,4);
return true
}else if(starts==-1||ends==-1)
{
return false;
}
else{
trace("年份格式不正确");
return false;
}
}
/**
* 查找是否月
* @param
* @return Boolean
*/
private function findMonth():Boolean
{
var starts = this.firstString("M");
var ends = this.lastString("M");
var monthtype = ends-starts;
if(starts==-1)
{
return false;
}
els

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多
上一篇: 设计聊天室下一篇: 两个新插件

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号