为了账号安全,请及时绑定邮箱和手机立即绑定

从 Google 电子表格到 Telegram 机器人的日期格式

从 Google 电子表格到 Telegram 机器人的日期格式

人到中年有点甜 2023-03-10 16:49:35
我制作了一个通过 Webhook 与电子表格连接的机器人。我有一个日期格式类似于 的单元格'dd MMMM',例如"03 september"。它是从等于 03.09.2020 00:00:00 GMT+3 的一定毫秒数获得的。我想使用这个精确值 ( "03 september") 作为投票选项。你可以在下面看到我的代码。如果我按原样使用它, poll option 会以某种方式转换为 value "2020-09-02T21:00:00.000"。如果我在将所有日期发送到 JSON 之前将所有日期映射到字符串,那么此选项看起来像"Thu Sep 03 2020 00:00:00 GMT+0300 ... ". 我怎样才能让它在电报中看起来简单?UPD:我认为这Utilities.formatDate()是一个合适的解决方案,但我仍然不知道如何将月份名称格式化为俄语语言环境。function doWork() {  var availableDates = scheduleSheet.getRange(1, 1, 1, 5).getValues()[0];  //var stringDates = availableDates.map(function(date) {return String(date)});  sendPoll(chatId, availableDates);}function sendPoll(chatId, options) {  var data = {    method: "post",    payload: {      method: "sendPoll",      chat_id: String(chatId),      question: "Some question:",      options: JSON.stringify(options),      is_anonymous: false,      allows_multiple_answers: true,      reply_markup: JSON.stringify(REMOVE_KEYBOARD)    }  };  UrlFetchApp.fetch('https://api.telegram.org/bot' + token + '/', data);}
查看完整描述

1 回答

?
千万里不及你

TA贡献1784条经验 获得超9个赞

出于文档目的发布此内容。

正如Tanaike建议的那样,为了在 Apps 脚本中从工作表单元格检索日期(或任何值)时保留显示格式,请使用getDisplayValues()而不是getValues()

返回显示值的二维数组,按行索引,然后按列索引。这些值是 String 对象。显示的值考虑了日期、时间和货币格式,包括由电子表格的区域设置自动应用的格式


查看完整回答
反对 回复 2023-03-10
  • 1 回答
  • 0 关注
  • 142 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信