我从API获取日期
2017-04-20T07:00:00Z
我如何将其格式化为以下内容?
20.04.2017
我使用React显示日期:
<div>{props.data.day}</div>
我尝试过例如 toISOString()。slice(0,10); 但是无法正常工作。我也尝试过寻找其他答案,但还没有找到解决方案。
答案 0 :(得分:1)
以下内容无需任何第三方库即可使用:
public void deleteRecursive(File fileOrDirectory) {
if (fileOrDirectory.isDirectory()) {
for (File child : fileOrDirectory.listFiles()) {
if (child.getName().equals("myfile40")) {
System.out.println("File 40 - Not deleted");
} else {
deleteRecursive(child);
}
}
fileOrDirectory.delete();
}
这给出了:
console.log(convertDate(new Date("2017-04-20T07:00:00Z")));
function convertDate(date) {
var day = date.getDate();
day = day < 10 ? "0" + day : day;
var month = date.getMonth() + 1;
month = month < 10 ? "0" + month : month;
var year = date.getFullYear();
return day + "." + month + "." + year;
}
您需要将此功能作为一项功能添加到您的组件中,并将返回值作为20.04.2017
的内容。
请注意,正如其他答案中所述,您最好使用可以处理时区和其他基于时间的问题的第三方库,而无需考虑它。
答案 1 :(得分:1)
您可以使用MomentJS来解析和格式化日期字符串。选择一个已经为您完成此操作的库。你应该担心你的业务逻辑。使用成熟;广泛使用的图书馆为你做繁重的工作。
console.log(moment('2017-04-20T07:00:00Z', moment.ISO_8601).format('DD.MM.YYYY'));
&#13;
.as-console-wrapper { top: 0; max-height: 100% !important; }
&#13;
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>
&#13;
软件开发的一部分是代码重用。由于您没有开发日期库,因此您不必担心创建日期库。
答案 2 :(得分:1)
如果您将日期存储为字符串,则可以这样转换:
#include <stdio.h>
int main() {
int i;
while (1) {
printf("Enter no?\n"); // step -1
if (scanf(" %d", &i) > 0) // step-2
printf("Num=%d\n", i);
else
printf("Entered character.Pls enter int\n");
}
}
这给出了:
var i ='2017-04-20T07:00:00Z';
var date = i.split('T');
console.log(date[0].split('-').reverse().join('.'))
答案 3 :(得分:0)
您可以使用Regex解析结果。
function convertDate(date){
var parsedDate = date.match(/^([\d]{4})-([\d]{2})-([\d]{2})/)
return parsedDate[2] + '.' + parsedDate[1] + '.' + parsedDate[0]
}
convertDate('2017-04-20T07:00:00Z')
答案 4 :(得分:0)
您可以提取日,月和全年,然后根据需要使用!
var oldDate = new Date('2017-04-20T07:00:00Z');
var d = oldDate.getDay().toString();
var m = oldDate.getMonth().toString();
var y = oldDate.getFullYear().toString();
if(d.length < 2){
d = '0' + d;
}
if(m.length < 2){
m = '0' + m;
}
var myDate = d + '/' + m + '/' + y;
window.alert(myDate);