【C++学习】之如何用系统日期时间给文件命名

本文介绍了一种利用C++程序获取当前系统时间,并将其转换为字符串格式的方法,用于生成带有时间戳的ROS bag文件名。
部署运行你感兴趣的模型镜像

参考的网上的模板,直接给出程序:

#include "ctime"
#include "time.h"
using namespace std;
string int2string(int value)
{
    stringstream ss;
    ss<<value;
    return ss.str();
}
 time_t t=std::time(0);
  struct tm * now = std::localtime( & t );
  string file_name;
  //the name of bag file is better to be determined by the system time
  file_name=int2string(now->tm_year + 1900)+
          '-'+int2string(now->tm_mon + 1)+
          '-'+int2string(now->tm_mday)+
          '-'+int2string(now->tm_hour)+
          '-'+int2string(now->tm_min)+
          '-'+int2string(now->tm_sec)+
            ".bag";

整个程序在我的上一篇博客中有,可以看下。如果你是在ubuntu,ros环境下搞的话,这里面需要注意的是在time(0)和localtime()前面加上std::,可能是因为ubuntu或者ros下对这两个函数有重定义,不加的话编译会报错。
当然这里面也涉及到了把int类型转换成string类型,我使用的是stringstream

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值