我正在解析YouTube JSON-C GDATA Feed,因为它是JSON,它不能包含冒号(:)所以当我解析字符串持续时间时,它会以纯文本形式出现,即823或2421.如何将其格式化为更具可读性?即823 - > 8:23或2421 - > 24.21或23 - > 0:23?
答案 0 :(得分:1)
我想严格回答你的问题,答案是:
//Check the length of the string and maybe add zero at the beginning
string = StringBuffer(string).insert(2, ":").toString();
注意:我应该使用string.getLength() - 2,但我希望你明白这一点; - )
但是,就个人而言,我会以秒或其他格式发送时间。
String dateStr = "03/08/2010";
SimpleDateFormat curFormater = new SimpleDateFormat("dd/MM/yyyy");
Date dateObj = curFormater.parse(dateStr);
SimpleDateFormat postFormater = new SimpleDateFormat("MMMM dd, yyyy");
String newDateStr = postFormater.format(dateObj);
答案 1 :(得分:1)
此代码应该这样做:
String time = "322";
int length = time.length();
StringBuffer s = new StringBuffer(time);
switch(length) {
case(1): s.insert(0, "0:0"); break; //ex: 2 -> 0:02
case(2): s.insert(0, "0:"); break; //ex: 22 -> 0.22
case(3): s.insert(1, ":"); break; //ex: 322 -> 3:22
case(4): s.insert(2, ":"); break; //ex: 2421 -> 24:21
}
如果您希望以小时为单位,则可以继续添加case(5)
。
祝你好运!
答案 2 :(得分:0)