我必须在flex中从日期字段中选择日期并将该日期存储到SqlLite数据库中。一世 我使用以下代码插入日期:
dbInsertDate = datechooser.selectedDate.getFullYear()。toString()+'0'+(datechooser.selectedDate.getMonth()+ 1)。toString()+“ - 0”+ datechooser.selectedDate.getDate()。的toString();
其中dbInsertDate是字符串类型变量,datechooser是日期字段id。它以2455361.5的格式将日期存储在数据库中。我想在数据库中以dd-mm-yyyy格式或yyyy-mm-dd格式存储日期。如何使用flex?
在SqlLite中以yyyy-mm-dd格式存储日期由于
答案 0 :(得分:1)
您可以使用DateFormatter:
var formatter:DateFormatter = new DateFormatter();
formatter.formatString = "DD-MM-YYYY";
var result:String = formatter.format(datechooser.selectedDate);
如果您使用本地化,您可以将格式字符串“翻译”为所需的格式。
答案 1 :(得分:0)
解决方案:将日期转换为字符串,并以yyyy mm dd格式转换
<强>码强>
这里的日期将像这个字符串2011-02-15
enter code here
dateChooser是datefield。
public var dbInsertDate:String;
private var selectedDateByUser:int;
if(dateChooser.selectedDate.getMonth()&lt; 9)
{
if(dateChooser.selectedDate.getDate() < 10)
{
dbInsertDate =
dateChooser.selectedDate.getFullYear().toString()+'-0'+(dateChooser.selectedDate.getMonth()+1).toString()+"-0"+dateChooser.selectedDate.getDate().toString();
}
else
{
dbInsertDate =
dateChooser.selectedDate.getFullYear().toString()+'-0'+(dateChooser.selectedDate.getMonth()+1).toString()+"-"+dateChooser.selectedDate.getDate().toString();
}
否则 {
if(dateChooser.selectedDate.getDate() < 10)
{
dbInsertDate =
dateChooser.selectedDate.getFullYear().toString()+'-'+(dateChooser.selectedDate.getMonth()+1).toString()+"-0"+dateChooser.selectedDate.getDate().toString();
}
else
{
dbInsertDate =
dateChooser.selectedDate.getFullYear().toString()+'-'+(dateChooser.selectedDate.getMonth()+1).toString()+"-"+dateChooser.selectedDate.getDate().toString();
}
}
此处的日期将类似于此字符串20110215.因此您可以将此格式的日期存储在sqlcite中的varchar列类型。
enter code here
var dateArray:Array = new Array();
dateArray = dbInsertDate.split(&#39; - &#39;);
selectedDateByUser = dateArray [0] + dateArray [1] + dateArray [2];