`
zhouxiaoli521
  • 浏览: 554267 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android android.text.format文件大小和日期解析类

阅读更多

很多网友可能直接将自己的J2ME项目生硬的移植到Android平台,其实Google为我们提供好了文件大小和时间日期解析类,它位于android.text.format这个包中,它提供了强大的标准化解析方法:


  1. IP地址解析类 在android.text.format.Formatter中提供了String formatIpAddress(int addr) 这个方法可以轻松方便的将socket中的int型转成类似127.0.0.1的IP格式,需要注意的是Linux平台的字节顺序,即小字节序、低字节序little-endian。


  2. 文件大小解析类 细心的网友可能还看到了android.text.format.Formatter中的formatFileSize方法,该方法String formatFileSize (Context context, long number) ,第二个参数是long型,是你要格式化的长度,比如你传入1024 它将返回“1.00k” 传入102400 它返回“100k”。


  3. 日期时间解析类 ,该类位于android.text.format.DateFormat这个package中,该类提供了Java中的三种时间对象,提示大家下面三种方法为静态可以直接调用,如下:

  final static CharSequence  format(CharSequence inFormat, Date inDate)  //传入Date对象
  Given a format string and a Date object, returns a CharSequence containing the requested date.

 final static CharSequence  format(CharSequence inFormat, Calendar inDate)  //Calendar对象
Given a format string and a Calendar object, returns a CharSequence containing the requested date.

final static CharSequence  format(CharSequence inFormat, long inTimeInMillis)  //long对象
Given a format string and a time in milliseconds since Jan 1, 1970 GMT, returns a CharSequence containing the requested date.

  我们可能看到了第一个参数均为inFormat这是一个CharSequence接口的String类型,它提供了灵活的时间格式解析字符串描述,提示大家注意大小写要区分,如

   April 6, 1970 at 3:23am 例子,那么inFormat参数的写法和最终执行的结果如下对照,

下面就以Android123的CWJ生日为例子如下

"MM/dd/yy h:mmaa" -> "11/03/87 11:23am"
"MMM dd, yyyy h:mmaa" -> "Nov 3, 1987 11:23am"
"MMMM dd, yyyy h:mmaa" -> "November  3, 1987 11:23am"
"E, MMMM dd, yyyy h:mmaa" -> "Tues , November 3, 1987 11:23am"
"EEEE, MMMM dd, yyyy h:mmaa" -> "Tues day, Nov 3, 1987 11:23am"


android.text.format.DateFormat类的static boolean  is24HourFormat(Context context)方法可以用来判断当前系统时间是否为24小时制式

 

==============

http://blog.csdn.net/gubaohua/article/details/575488

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics