1. 程式人生 > >【C++學習】之如何用系統日期時間給檔案命名

【C++學習】之如何用系統日期時間給檔案命名

參考的網上的模板,直接給出程式:

#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

相關推薦

C++學習如何用系統日期時間檔案命名

參考的網上的模板,直接給出程式: #include "ctime" #include "time.h" using namespace std; string int2string(int value) { stringstream ss;

Mac系統 + Python + Django開發一個釋出會系統Django模型(二) Mac系統 + Mysql安裝Mysql資料庫 Python + Mysqlpymysql庫連線Mysql資料庫並進行增刪改查操作

上一部分給大家介紹Django的檢視。 接下來繼續來了解Django框架,來看第二部分,此部分是對資料庫的操作。   目錄: 一、設計系統表 二、admin後臺管理 三、基本資料訪問(SQLite資料庫) 四、Django配置MySQL   &

C學習全通紙筆王網上閱卷系統 APMS_Setup.exe IP修改程式

前段時間用APMS遠端改卷,發現瀏覽器需要安裝閱卷外掛,安裝的過程提示IP無效,無法正常安裝外掛。後來用UEdit開啟可見.exe檔案中已經內建配置好的IP地址,可以通過修改為指定的IP後,便可以在本地正常安裝外掛並正常進入閱卷系統了。 為了方便起見,用C和C#以及Delphi寫了一份程式碼

C/C++學習十四、RTTI

RTTI(Runtime TypeIdentification) 提供了執行時確定物件型別及轉換指標或引用型別的方法。  有關內容包括類名稱,資料成員名稱與型別,函式名與型別等。 在大多數面向度地向專

C/C++學習十、CRT

今天聽到CRT這個詞,又聽說:main 是應用程式的入口點,但是不是應用程式起來呼叫的第一個函式,在這之前由crt來呼叫main函式。 現在就來看一下CRT是什麼?來看一下: /////////////////////////////////////////////////

JAVA學習07.建立系統模塊的權限表

英文 使用 TP bubuko 分享 http .com java學習 png 【提要】系統權限要盡量做到可配置,包括用戶、菜單、群組、角色、按鈕等 【步驟】 【註意】 1、因為群組名、角色名、按鈕名、菜單名都有可能修改,所以要使用編碼+名稱,編碼

C#學習delegate(委託) 和 event(事件)

C# 中的委託(Delegate)類似於 C 或 C++ 中函式的指標。委託(Delegate) 是存有對某個方法的引用的一種引用型別變數。引用可在執行時被改變。在C#中方法不能作為引數直接傳遞,必須使用委託(用來委託方法)。delegate(委託)是一種特殊的引用型別,它將方法也作為特殊的物件封裝

git學習在CenterOS系統上恢復GitLab時出現錯誤:tar: 由於前次錯誤,將以上次的錯誤狀態退出 unpacking backup failed

一、問題描述 今天在測試加密GitLab備份檔案之後,進行解密,然後再恢復GitLab的時候,恢復失敗,報瞭如下的錯誤: tar: db:無法 mkdir: 許可權不夠 tar: db:無法 mkdir: 許可權不夠 tar: db/database.sql.

C#基礎訪問修飾符、類與屬性、類與結構的簡單介紹

在學方法之前先學習類…… 介紹類之前先介紹下C#中常用的四個訪問修飾符: 我的疑問:結構與類的區別?結構裡不能定義方法,它們都可以定義多個屬性,什麼時候要用結構?什麼時候要用類? 一、C#中的4個常用訪問修飾符: public:可以在任何地方被訪問 internal:只能

Python學習 Turtle庫

(一)簡介 (二)練習 import turtle def main(): turtle.pensize(3) turtle.penup()

python學習——簡單購物系統實現(進化版)

實現功能有:輸入賬號,密碼。根據賬號密碼會判斷為買家還是賣家,或者是已經被凍結的賬號(密碼輸入三次錯誤賬號就將被凍結)。買家入口:    1.根據序號購買商品    2.每次購買完成,都會顯示本次購買的商品以及餘額    3.若餘額不足,會提示購買失敗    4.按q鍵可退出

Python學習 畫小樹

def tree(plist, l, a, f): """ plist is list of pens l is length of branch a is half of th

C++學習變數和儲存區

儲存區一般分為以下五種: 棧區: 由編譯器在需要的時候進行分配,不需要的時候會自動清空,棧區一般比較小,對於較大的陣列不應該放入棧區。 堆區: 由new分配的空間,他們的釋放由程式中的語句進行操

git學習在CenterOS系統上安裝GitLab並自定義域名訪問GitLab管理頁面

目前就職的公司一直使用SVN作為版本管理,現在打算嘗試從SVN遷移到Git。安排我來預言並搭建好相關的環境以及自己嘗試使用Git。今天我就嘗試在Center OS系統上安裝GitLab,現在在此記錄一下整個安裝過程。 第一步 檢視GitLab的官方

深度學習pythonRNN中LSTM進行正弦函式擬合

深度學習框架:Tensorflow 0.8.0 Python:2.7.6 資料的兩種輸入模型: ①data和label是同一個變數,整個模型相當於自迴歸(本文先演示第一種) ②data和label是不同的變數,整個模型相

C#學習從泛型集合到強制轉換,start brain storm~

        大話設計模式的時候,提到了一個迭代器模式,由於高階語言對迭代器模式功能進行了很好的封裝,所以這個模式就不太常用。不過,我想說的重點是,迭代器模式裡提到的一個概念“非泛型集合”。由於不明白什麼意思,於是我就去問了度娘。不過我發現“泛型集合”比非泛型集合更有料。   泛型集合        

C#學習繼承和多型

建構函式和解構函式的呼叫順序 建構函式和解構函式的呼叫順序相反,建構函式從基類到派生類依次呼叫,解構函式反過來。 抽象類和抽象方法 抽象方法必須包含在抽象類中,也就是說,一旦一個類包含抽象方法,就應該被宣告為抽象類。 抽象類用 abstract 修飾,無法用new 來例項化。但可以用抽象類的引用

資料結構堆實現優先佇列

#include <stdio.h> #include <malloc.h> /** * 使用堆來實現優先佇列 * 堆的最重要性質就是子節點的值>=父節點的值, *

C++學習如何在Clion中生成多個可執行檔案

在構建一個新的Clion工程的時候,會自動生成一個資料夾cmake-build-debug,可以幫助我們快速的對整個C++工程進行編譯執行。而主函式編譯後生成的可執行檔案就位於cmake-build-d

Oracle學習 事務(Transaction)與鎖

Q:建立空表後再插入記錄,再回滾,記錄沒了,而表還存在? A:看(下文)事務提交COMMIT Topic1 :事務 Topic2:鎖(exclusive,share鎖) 一、事務概念   定義:事務是一些資料庫操作的