我正在尝试从电子表格构建日历,然后与域内的适当人员共享它们。我将其作为附加到电子表格的脚本来执行。
到目前为止,我可以读取正确的单元格并使用事件构建日历,但我遇到的问题是弄清楚如何与正确的人共享特定的日历。
我四处搜索并找到了相同的通用代码来手动请求网页允许访问,但我尝试使用但没有成功。我是否错过了其他人都认为你已经完成的步骤?我所做的只是在电子表格上编写一个脚本,是否有一些设置可以让它工作?
如果通过脚本无法实现,那么处理这种事情的最佳方法是什么?使用 PHP 和 cron 作业会更好吗?
我当前共享日历的代码是:
function onEdit() {
calendarSharing('nic@xyz.com', 'boris@xyz.com');
};
function calendarSharing(user1,user2){
var scope = 'https://www.google.com/calendar/feeds/';
var fetchArgs = googleOAuth_('calenders', scope);
var rawXml= "<entry xmlns='http://www.w3.org/2005/Atom' xmlns:gAcl='http://schemas.google.com/acl/2007'>"+
"<category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/acl/2007#accessRule'/>"+
"<gAcl:scope type='user' value='"+user2+"'></gAcl:scope>"+
"<gAcl:role value='http://schemas.google.com/gCal/2005#owner'> </gAcl:role></entry>"
fetchArgs.method = 'POST';
fetchArgs.payload = rawXml
fetchArgs.contentType = 'application/atom+xml';
try{
var url='https://www.google.com/calendar/feeds/'+user1+'/acl/full'
var urlFetch=UrlFetchApp.fetch(url,fetchArgs) //Giving Permission To personal account as a owner
}
catch(err){
var err1=err.toString()
var ex='Exception: Request failed for returned code 302'
if(ex==err1.split('.')[0]){
var tempCalenderUrl=[]
tempCalenderUrl.id = err1.split('<A …Run Code Online (Sandbox Code Playgroud) 我正在开发 ICS 日历源,该源将由不同的日历应用程序使用。我正在使用 PHP iCal 包来生成提要: https: //github.com/markuspoerschke/iCal
为我提供 ics feed 数据的基本系统具有以下类型的重复事件:
每日、每周、每月、每季度、每年
我正在查看 RFC 文档以了解此标准https://www.rfc-editor.org/rfc/rfc5545,并且标准仅支持以下重复频率:
freq = "SECONDLY" / "MINUTELY" / "HOURLY" / "DAILY"
/ "WEEKLY" / "MONTHLY" / "YEARLY"
Run Code Online (Sandbox Code Playgroud)
这意味着没有标准的方法来举办季度重复活动。
我想到的一个解决方案是每 3 个月后添加一个新事件。但是,这将在一年中添加 4 个单独的事件,而不是添加原始事件的 4 个重复实例。
有没有办法“欺骗”ICS 创建季度“重复”事件?
在Android中,我用来java.util.Calendar获取格式为昨天的日期yyyy-MM-dd'T'hh:mm:ss'Z'。例如,如果今天是31 May 2017,我想将昨天的日期设为2017-05-30T00:00:00Z。
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
// Date End = yesterday
calendar.add(Calendar.DATE, -1);
Date dateEnd = calendar.getTime();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'hh:mm:ss'Z'");
this.dateEndStr = formatter.format(dateEnd);
Run Code Online (Sandbox Code Playgroud)
我期望输出为2017-05-30T00:00:00Z. 但它给了我2017-05-30T12:00:00Z。
这里有什么问题吗?与时区有关吗?我的时区是GMT/UTC + 08:00 hour.
我在字符串中获取时间和偏移量。
时间采用 UTC 格式,我必须根据偏移量转换该时间,然后将其分配给一个Calendar对象。
问题是我正在使用类plusHours()方法OffsetDateTime。我得到相同的结果。
OffsetDateTime odtB = OffsetDateTime.parse( "2018-03-26T06:00:00Z" ) ;
odtB.plusHours(2);
System.out.println(odtB);
Run Code Online (Sandbox Code Playgroud)
例如,如果我的日期是"2018-03-26T06:00:00Z"并且偏移/时区值为“+02:00”,如何更改它以获取输出"2018-03-26T08:00:00Z"?
我正在使用名为 i18next 的国际化框架。我的一个组件是 p-calendar,但我不知道如何使用此框架将其国际化。有谁知道我如何使用 i18next 国际化这个组件?如果有人知道不使用 i18next 的另一种解决方案,我也可以使用。
有一种更好的方法可以通过以下代码的十分钟来舍入(天花板和地板)日期时间:
public void hintOfTime() {
Date orario = new SimpleDateFormat("hh:mm").parse(usaServizio_standard.setStr());
// I have skipped the try catch for an easy read
Calendar calendar = GregorianCalendar.getInstance();
calendar.setTime(orario);
int minutes = calendar.get(Calendar.MINUTE);
if(minutes>=1 && minutes<=9) {
usaServizio_standard.hint("not valid date","Try with: "+ calendar.get(Calendar.HOUR+1)+":00 or "+calendar.get(Calendar.HOUR+1)+":10");
}else if(minutes>=11 && minutes<=19) {
usaServizio_standard.hint("not valid date","Try with: "+ calendar.get(Calendar.HOUR+1)+":10 or "+calendar.get(Calendar.HOUR+1)+":20");
}else if(minutes>=21 && minutes<=29) {
usaServizio_standard.hint("not valid date","Try with: "+ calendar.get(Calendar.HOUR+1)+":20 or "+calendar.get(Calendar.HOUR+1)+":30");
}else if(minutes>=31 && minutes<=39) {
usaServizio_standard.consiglio("not valid date","Try with: "+ calendar.get(Calendar.HOUR+1)+":30 or …Run Code Online (Sandbox Code Playgroud) 所以这很有趣:
\npo Calendar.default.date(from: DateComponents(year: 2022, month: 1, hour: 16, minute: 1, second: 1, weekday: 1, weekOfMonth: 1))\n\xe2\x96\xbf Optional<Date>\n \xe2\x96\xbf some : 2021-12-26 23:01:01 +0000\n - timeIntervalSinceReferenceDate : 662252461.0\nRun Code Online (Sandbox Code Playgroud)\n我预计是 2022 年 1 月 1 日,但我得到的是 2021 年 12 月 26 日?它为什么要这样做?难道我做错了什么?
\n我下面有一个函数,它有一个输入日期,它将以格式返回下个月的第一个和最后一个日期MM/dd/yyyy。
String string = "01/01/2022";
DateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
Date dt = sdf .parse(string);
Calendar c = Calendar.getInstance();
c.setTime(dt);
c.add(Calendar.MONTH, 1);
String firstDate = sdf.format(c.getTime());
System.out.println("FirstDate:" + firstDate);
c.add(Calendar.MONTH, 1);
c.add(Calendar.DAY_OF_MONTH, -1);
String lastDate = sdf.format(c.getTime());
System.out.println("LastDate:" + lastDate);
Run Code Online (Sandbox Code Playgroud)
上面的内容会给我如下的输出
FirstDate:02/01/2022
LastDate:02/28/2022
Run Code Online (Sandbox Code Playgroud)
如果输入是上个月的第一天,这效果很好,我想要实现的是获取下一个月的 FirstDate 和 LastDate,month即使输入的日期不是该月的第一天,例如01/31/2022给出我下面的输出
FirstDate:02/28/2022
LastDate:03/27/2022
Run Code Online (Sandbox Code Playgroud)
但我仍然希望它能给我第一个
FirstDate:02/01/2022
LastDate:02/28/2022
Run Code Online (Sandbox Code Playgroud) I'm not finding a way to do edit GMT Date
I receive "params.date" one string in this format "yyyyMMdd", so this is my flow:
Date date = new SimpleDateFormat('yyyyMMdd').parse(params.data)
System.out.println(sdf.parse(params.data))
Run Code Online (Sandbox Code Playgroud)
output:
Thu Nov 17 21:00:00 GMT-03:00 2022
Run Code Online (Sandbox Code Playgroud)
And I need it:
Thu Nov 17 21:00:00 GMT-00:00 2022
Run Code Online (Sandbox Code Playgroud)
Can someone help me?
我不认为我会花一个小时试图弄清楚这个......我今天取得的所有进展都是如此.
所以我正在使用看起来似乎是 - 直接手册 - erlang BIF
calendar:universal_time().
Run Code Online (Sandbox Code Playgroud)
但我明白了
35> calendar:universal_time().
** exception error: undefined function calendar:universal_time/0
Run Code Online (Sandbox Code Playgroud)
检查了我的erlang版本..所有最新版本..
33> client:cmdParse("A", [<<"24">>, <<"hellloooo">>], 56).
** exception error: undefined function calendar:universal_time/0
in function client:timeUTC/0
in call from client:cmdParse/3
34> erlang:system_info(otp_release).
"R14A"
35> calendar:universal_time().
** exception error: undefined function calendar:universal_time/0
36> calendar:universal_time()).
* 1: syntax error before: ')'
36> calendar:local_time().
** exception error: undefined function calendar:local_time/0
Run Code Online (Sandbox Code Playgroud)
到底是怎么回事?为什么不定义?