gwt是否从字符串创建日期对象?
我正在gwt应用程序中使用运动图。我的问题是如何从字符串创建日期对象?以下是我的代码:gwt是否从字符串创建日期对象?,gwt,Gwt,我正在gwt应用程序中使用运动图。我的问题是如何从字符串创建日期对象?以下是我的代码: import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import com.google.gwt.user.client.rpc.AsyncCallback; impor
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.visualization.client.AbstractDataTable;
import com.google.gwt.visualization.client.DataTable;
import com.google.gwt.visualization.client.VisualizationUtils;
import com.google.gwt.visualization.client.visualizations.LineChart;
import com.google.gwt.visualization.client.visualizations.MotionChart;
import com.google.gwt.visualization.client.visualizations.MotionChart.Options;
import com.google.gwt.visualization.client.AbstractDataTable.ColumnType;
import com.google.gwt.core.client.GWT;
import com.google.gwt.i18n.client.DateTimeFormat;
import component.client.SQLRunner;
import component.client.SQLRunnerAsync;
public class DashboardWidget
{
private HorizontalPanel containerPanel=null;
private DataTable data=null;
public DashboardWidget()
{
containerPanel = new HorizontalPanel();
}
public HorizontalPanel getContainerPanel()
{
SQLRunnerAsync service = (SQLRunnerAsync) GWT.create(SQLRunner.class);
AsyncCallback<ArrayList<String[]>> callback = new AsyncCallback<ArrayList<String[]>>()
{
@Override
public void onFailure(Throwable caught)
{
}
@Override
public void onSuccess(final ArrayList<String[]> result)
{
Runnable onLoadCallback = new Runnable()
{
public void run()
{
DataTable data = DataTable.create();
data.addColumn(ColumnType.STRING, " Name");
data.addColumn(ColumnType.DATE, "Date");
data.addColumn(ColumnType.NUMBER, "Count");
data.addColumn(ColumnType.NUMBER, "Something");
data.addColumn(ColumnType.NUMBER, "Something Else");
data.addRows(result.size());
@**SuppressWarnings("deprecation")
Date date = new Date(1888,06,01);
DateTimeFormat fmt = DateTimeFormat.getFormat("yyyy,MM,dd");**
for(int i=0;i<result.size();i++)
{
String[] temp = result.get(i);
String name=temp[0];//name
String count= temp[2];
String something=temp[3];
String seomthingElse=temp[5];
data.setValue(i, 0, name);//NAME
data.setValue(i, 1, date);//date
data.setValue(i, 2, Integer.parseInt(count));//eloc
data.setValue(i, 3, Integer.parseInt(something));//warning
data.setValue(i, 4, Integer.parseInt(somethingeElse));//static (open) warning
}
Options options = Options.create();
options.setWidth(1000);
options.setHeight(1000);
MotionChart chart = new MotionChart(data, options);
containerPanel.add(chart);
}
};
VisualizationUtils.loadVisualizationApi(onLoadCallback, MotionChart.PACKAGE);
}
};
service.getDataFromDatabase("","","","", callback);
return containerPanel;
}
}
导入java.text.DateFormat;
导入java.text.ParseException;
导入java.text.simpleDataFormat;
导入java.util.ArrayList;
导入java.util.Date;
导入com.google.gwt.user.client.rpc.AsyncCallback;
导入com.google.gwt.user.client.ui.HorizontalPanel;
导入com.google.gwt.visualization.client.AbstractDataTable;
导入com.google.gwt.visualization.client.DataTable;
导入com.google.gwt.visualization.client.VisualizationUtils;
导入com.google.gwt.visualization.client.visualizations.LineChart;
导入com.google.gwt.visualization.client.visualizations.MotionChart;
导入com.google.gwt.visualization.client.visualizations.MotionChart.Options;
导入com.google.gwt.visualization.client.AbstractDataTable.ColumnType;
导入com.google.gwt.core.client.gwt;
导入com.google.gwt.i18n.client.DateTimeFormat;
导入component.client.SQLRunner;
导入component.client.SQLRunnerAsync;
公共类DashboardWidget
{
private HorizontalPanel containerPanel=null;
私有数据表数据=null;
公共DashboardWidget()
{
containerPanel=新水平面板();
}
公共水平面板getContainerPanel()
{
SQLRunnerAsync服务=(SQLRunnerAsync)GWT.create(SQLRunner.class);
AsyncCallback callback=新的AsyncCallback()
{
@凌驾
失败时的公共无效(可丢弃)
{
}
@凌驾
成功时公开作废(最终ArrayList结果)
{
Runnable onLoadCallback=new Runnable()
{
公开募捐
{
DataTable data=DataTable.create();
data.addColumn(ColumnType.STRING,“Name”);
data.addColumn(ColumnType.DATE,“日期”);
data.addColumn(ColumnType.NUMBER,“Count”);
data.addColumn(ColumnType.NUMBER,“某物”);
data.addColumn(ColumnType.NUMBER,“其他内容”);
data.addRows(result.size());
@**抑制警告(“弃用”)
日期=新日期(1888,06,01);
DateTimeFormat fmt=DateTimeFormat.getFormat(“yyyy,MM,dd”)**
对于(int i=0;i您不能使用DateTimeFormat对象吗?类似于以下内容:
Date parsed = fmt.parse(text);
不能使用DateTimeFormat对象吗?类似于以下内容:
Date parsed = fmt.parse(text);
Treid this:String d=“10/10/2011”;DateTimeFormat fmt=DateTimeFormat.getFormat(“yyy,MM,dd”);Date date2=fmt.parse(d);但解析时遇到非法参数异常。日期字符串的格式应该是什么?我同意科林的建议,使用DateTimeFormat对象是将字符串解析为java.util.date对象的首选方法。要使用的DateTimeFormat将是包中的格式:com.google.gwt.i18n.client。@sarah我猜是repla用斜杠(/)替换逗号(,)是有意义的,因为日期是用斜杠分隔的?2011年10月10日不是yyyy,MM,dd格式。相反,请尝试MM/dd/yyyy格式来读取该字符串。Treid this:string d=“10/10/2011”;DateTimeFormat fmt=DateTimeFormat.getFormat(“yyyy,MM,dd”);date date2=fmt.parse(d);但解析时遇到非法参数异常。日期字符串的格式应该是什么?我同意科林的建议,使用DateTimeFormat对象是将字符串解析为java.util.date对象的首选方法。要使用的DateTimeFormat将是包中的格式:com.google.gwt.i18n.client。@sarah我猜是repla用斜杠(/)替换逗号(,)是有意义的,因为日期是用斜杠分隔的?2011年10月10日不是yyyy、MM、dd格式。请尝试使用MM/dd/yyyy格式读取该字符串。