将日期字符串转换为 qml 中的 date()

Mr.*_*per 4 string qt date date-conversion qml

我需要将日期字符串“28/01/2018”(dd/mm/yyyy)转换为qml中的Date()。

我试过这个:

  var dateBoard = masterPAGEMAIN.getData();

  var locale = Qt.locale()

  var someDateTest = new Date()
  someDateTest = Date.fromLocaleString(locale, dateBoard, "dd/MM/yyyy");
  var test = someDateTest.getDate().toString();
Run Code Online (Sandbox Code Playgroud)

还看到了这个: conversione from string ,但我的问题是我继续收到“NaN”或“无效日期”,如何从 qml 中的字符串获取 Date() ?

谢谢

p-a*_*l-o 5

传递给的字符串fromLocaleString必须采用预期的格式。试试这个代码:

var dateBoard = "01/31/2018"
var someDateTest = Date.fromLocaleString(Qt.locale(), dateBoard, "dd/MM/yyyy")
var test = someDateTest.getDate() //nan
Run Code Online (Sandbox Code Playgroud)

由于 中 的字符串表示MM/dd/yyyydateBoard格式的日期,因此将返回无效日期 和,相应地。fromLocaleStringgetDate nan

dateBoard如果是空字符串、null 或未定义,同样适用。