通过javascript保存当前日期和时间的excel文件
我想打开excel文件,然后保存excel文件,文件名为文件名+当前日期和时间。对于我使用的日期通过javascript保存当前日期和时间的excel文件,javascript,excel,Javascript,Excel,我想打开excel文件,然后保存excel文件,文件名为文件名+当前日期和时间。对于我使用的日期date() 今天包含要在文件名中使用的非法字符(:)。你需要清理你的约会对象,例如: var today = new Date().toString().replace(/[^\w]/g, ''); 保存时,时间戳应该是文件名的一部分,而不是扩展名: excel_file.SaveAs("D:\\board" + today + ".xls"); 您可以使用方法将时间戳格式化为所需的格式,而不是
date()
今天
包含要在文件名中使用的非法字符(:
)。你需要清理你的约会对象,例如:
var today = new Date().toString().replace(/[^\w]/g, '');
保存时,时间戳应该是文件名的一部分,而不是扩展名:
excel_file.SaveAs("D:\\board" + today + ".xls");
您可以使用方法将时间戳格式化为所需的格式,而不是.toString().replace()
编辑 以下是您可以修改日期的代码。我已经为您简化了
getDate()
,因此您可以修改它以您想要的任何形式返回日期
var today = new Date(),
time = today.toTimeString().split(':').join('').substr(0, 4),
timestamp = getDate('dd_mm_yyyy', today) + '_' + time;
function getDate (mode, userdate) {
var dte = userdate || new Date(),
d = dte.getDate().toString(),
m = (dte.getMonth() + 1).toString(),
yyyy = dte.getFullYear().toString(),
dd = (d.length < 2) ? '0' + d : d,
mm = (m.length < 2) ? '0' + m : m,
yy = yyyy.substring(2, 4);
switch (mode) {
case 'dd_mm_yyyy': return dd + '_' + mm + '_' + yyyy;
case 'yyyymmdd': return yyyy + mm + dd;
default: return dte;
}
}
var today=新日期(),
time=today.toTimeString().split(“:”).join(“”).substr(0,4),
timestamp=getDate('dd_-mm_-yyyy',今天)+''.'时间;
函数getDate(模式,userdate){
var dte=userdate | | new Date(),
d=dte.getDate().toString(),
m=(dte.getMonth()+1.toString(),
yyyy=dte.getFullYear().toString(),
dd=(d.长度<2)?“0”+d:d,
mm=(m.长度<2)?“0”+m:m,
yy=yyy.子串(2,4);
开关(模式){
案例'dd_-mm_-yyyy':返回dd+''.'+mm+'.'.'+yyyy;
案例“yyyymmdd”:返回yyyy+mm+dd;
默认:返回dte;
}
}
timestamp
在运行上述代码后,以想要的形式包含一个日期 当前输出文件名是什么?所需的文件名是什么?我想你知道这与跨浏览器的兼容性很差吗?所需的文件名可以是任何东西。保存文件后,没有限制。我想要这样的文件格式“Invoicendeails20_NOV_2013_12_2355”表示文件名,然后是DD-MM-YY,然后是时间。你可以从new Date()提取所有需要的时间项
,请按照我的答案中提供的链接进行操作。记住,时间不能包含:
。如果您在格式化时间戳时需要帮助,也许您应该问一个新问题,格式化日期与保存Excel文件完全不同。谢谢您的帮助GUIDENCE@Teemu
var today = new Date(),
time = today.toTimeString().split(':').join('').substr(0, 4),
timestamp = getDate('dd_mm_yyyy', today) + '_' + time;
function getDate (mode, userdate) {
var dte = userdate || new Date(),
d = dte.getDate().toString(),
m = (dte.getMonth() + 1).toString(),
yyyy = dte.getFullYear().toString(),
dd = (d.length < 2) ? '0' + d : d,
mm = (m.length < 2) ? '0' + m : m,
yy = yyyy.substring(2, 4);
switch (mode) {
case 'dd_mm_yyyy': return dd + '_' + mm + '_' + yyyy;
case 'yyyymmdd': return yyyy + mm + dd;
default: return dte;
}
}