如何将"Sun Sep 02 2012 08:00:00 GMT+0800 (中国标准时间)" 这个字符串 给转成date类型?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将"Sun Sep 02 2012 08:00:00 GMT+0800 (中国标准时间)" 这个字符串 给转成date类型?相关的知识,希望对你有一定的参考价值。

'Sun Sep 02 2012 08:00:00 GMT+0800 (中国标准时间)'--此格式日期无法传到java后台,须格式化(date类型),方法如下

var d = new Date('Thu May 12 2016 08:00:00 GMT+0800 (中国标准时间)');  

youWant=d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate() + ' ' + d.getHours() + ':' + d.getMinutes() + ':' + d.getSeconds();

扩展资料:

中国现代时间标准是中国科学院国家授时中心(英文缩写为NTSC)建立并保持的原子时标准,其学术代号记为TA(NTSC),民用时间标准也是由该中心建立并保持的协调世界时,记为UTC(NTSC)。人们通常所说的中国标准时间,就是协调世界时UTC(NTSC)。

现代国际时间的计量标准是国际原子时。它的基本单位是秒。一个原子时秒的长度是铯原子跃迁振荡9192631770周所持续的时间。更长的时间单位由秒的累加而得。

国际原子时由设在法国巴黎的国际权度局(BIPM)建立并保持。BIPM分析处理全世界约50个时间实验室的200多台原子钟数据,得到综合时间尺度——国际原子时。中国科学院国家授时中心参与国际原子时的建立。目前,国家授时中心有19台铯原子钟和4台氢原子钟的数据定期传送给BIPM,是对国际原子时的建立和保持作出贡献的主要实验室之一。

参考技术A 首先要把后面中文去掉,因为已经有GMT时区信息,少了这个也没问题。然后要把GMT+0800改成GMT+08:00,这样才是General time zone的正确表示法(至少sun的标准如此),然后用java.text.SimpleDateFormat:

String s = "Sun Sep 02 2012 08:00:00 GMT+08:00";
SimpleDateFormat sf = new SimpleDateFormat("EEE MMM dd yyyy hh:mm:ss z",Locale.ENGLISH);
Date d = sf.parse(s);本回答被提问者采纳

PostgreSQL 与 TypeORM 错误“在 \"Sep\" 处或附近出现语法错误”

【中文标题】PostgreSQL 与 TypeORM 错误“在 \\"Sep\\" 处或附近出现语法错误”【英文标题】:PostgreSQL with TypeORM error "syntax error at or near \"Sep\""PostgreSQL 与 TypeORM 错误“在 \"Sep\" 处或附近出现语法错误” 【发布时间】:2020-12-26 02:52:04 【问题描述】:

尝试从 graphQL 发帖时出现错误消息,显然这是一个语法错误,我对 SQL 不太熟悉,所以我不知道错误是什么。我也在使用 TypeORM,所以我不知道这里怎么会出现语法错误。

"query": "INSERT INTO \"post\"(\"title\", \"text\", \"points\", \"creatorId\", \"createdAt\", \"updatedAt\") VALUES ($1, $2, DEFAULT, DEFAULT, Sat Sep 05 2020 15:49:01 GMT+0200 (Central European Summer Time), Sat Sep 05 2020 15:49:01 GMT+0200 (Central European Summer Time)) RETURNING \"id\", \"points\", \"createdAt\", \"updatedAt\"",

这是错误信息: "message": ""Sep" 或附近的语法错误",

使用 INSERT INTO 时会发生错误,并且错误说它发生在“Sep”这个词上,所以很明显日期或某些东西有问题,尽管我不明白这有什么意义。

这是帖子解析器

@ObjectType()
@Entity()
export class Post extends BaseEntity 
  @Field()
  @PrimaryGeneratedColumn()
  id!: number;

  @Field()
  @Column()
  title!: string;

  @Field()
  @Column()
  text!: string;

  @Field()
  @Column( type: "int", default: 0)
  points!: string;

  @Field()
  @Column()
  creatorId: number;

  @ManyToOne(() => User, (user) => user.posts)
  creator: User;

  @Field(() => String)
  @CreateDateColumn()
  createdAt = Date;

  @Field(() => String)
  @UpdateDateColumn()
  updatedAt = Date;

这是突变

@Mutation(() => Post)
  async createPost(@Arg("input") input: PostInput,
  @Ctx() req: MyContext): Promise<Post> 
    return Post.create( 
      ...input,
      creatorId: req.session!.userId,
     ).save();
  

【问题讨论】:

【参考方案1】:

您的实体代码中似乎有错字:

@Field(() => String)
  @CreateDateColumn()
  createdAt : Date;  //replace = with :

  @Field(() => String)
  @UpdateDateColumn()
  updatedAt : Date;  //replace = with :

【讨论】:

以上是关于如何将"Sun Sep 02 2012 08:00:00 GMT+0800 (中国标准时间)" 这个字符串 给转成date类型?的主要内容,如果未能解决你的问题,请参考以下文章

使用字符串格式“Sun, 08 Jan 2012 13:57:38 +0000”将 NSString 转换为 NSDate

如何获取 sun.misc.Unsafe 的实例?

根据项目特定设置函数默认值 R

如何使用制表符分隔符 sep = "\t" 在 R 中编写 .tsv 文件

已经为此上下文配置了侦听器“com.sun.faces.config.ConfigureListener”。重复的定义已被忽略

上周每位玩家的平均游戏数