如何在android中将String date转换为29-nov-2011格式

时间:2013-04-29 05:45:55

标签: android simpledateformat

大家好,我有一个关于日期格式的问题。我正在制作一个Android应用程序,它从数据库中获取日期并显示在屏幕上,但我希望当用户查看该日期应该是29-nov-2011格式。我尝试了很多代码却失败了..请帮帮我。

我存储的日期格式是dd / mm / yyyy。

这是我的代码。
dt 表示日期来自数据库,我将其传递给函数以更改我的日期格式。

public void change_Date(String dt) {
    try{
        Toast.makeText(getApplicationContext(), "In change()", 
                                                     Toast.LENGTH_LONG).show();
        SimpleDateFormat sdf = new SimpleDateFormat("dd/MMM/yyyy");
        Date d = sdf.parse(dt);
        String str = sdf.format(d);
        Toast.makeText(getApplicationContext(), "Date="+str, 
                                                     Toast.LENGTH_LONG).show();
    } catch(Exception e) {
    e.printStackTrace();
    }
}

4 个答案:

答案 0 :(得分:2)

SimpleDateFormat

SimpleDateFormat format = new SimpleDateFormat("dd-MMM-yyyy");
String date = format.format(Date.parse("Your date string"));

答案 1 :(得分:2)

public void change_Date(String dt)
    {
        try
        {
            Toast.makeText(getApplicationContext(), "In change()", Toast.LENGTH_LONG).show();
            SimpleDateFormat sdf = new SimpleDateFormat("dd/MMM/yyyy");
            Date d = sdf.parse(dt);

            SimpleDateFormat sdfddMMMyyyy = new SimpleDateFormat("dd-MMM-yyyy");
            String str = sdfddMMMyyyy.format(d);
            Toast.makeText(getApplicationContext(), "Date="+str, Toast.LENGTH_LONG).show();
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
    }

答案 2 :(得分:0)

使用SimpleDateFormat java类格式化日期:

http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html

在您的情况下,格式为“dd-MMM-yyyy”

答案 3 :(得分:0)

SimpleDateFormat format = new SimpleDateFormat("dd-MMM-yyyy");
String date = format.format(Date.parse("Your date string"));

,您必须导入java.util.Date