c++文件名加上时间戳
时间: 2023-11-03 15:03:15 浏览: 284
根据提供的代码,创建一个当前时间戳作为文件名的方法是将当前时间转换为字符串,并将其添加到文件名中。下面是一个示例代码:
```
#include <iostream>
#include <fstream>
#include <string>
#include <ctime>
int main() {
std::time_t currentTime = std::time(nullptr);
std::tm* localTime = std::localtime(¤tTime);
char chCurrentTime[256];
std::strftime(chCurrentTime, sizeof(chCurrentTime), "%Y%m%d%H%M%S", localTime);
std::string stCurrentTime = chCurrentTime;
std::string filename = "data_" + stCurrentTime + ".txt";
std::cout << "文件名加上时间戳: " << filename << std::endl;
return 0;
}
```
运行这段代码,将会输出带有当前时间戳的文件名。你可以根据自己的需要修改文件名的格式和前缀。
相关问题
用C++写一个使用数据采集卡采集数据的程序,并且每行数据加上时间戳的标准时间格式
好的,以下是一个使用数据采集卡采集数据并加上时间戳的程序:
```c
#include <stdio.h>
#include <time.h>
int main() {
FILE *fp;
time_t rawtime;
struct tm *timeinfo;
char filename[100];
char data[100];
// 获取当前时间
time(&rawtime);
timeinfo = localtime(&rawtime);
// 构造文件名
strftime(filename, sizeof(filename), "data_%Y%m%d_%H%M%S.txt", timeinfo);
// 打开文件
fp = fopen(filename, "w");
// 循环采集数据并写入文件
while (1) {
// 采集数据
// ...
// 获取当前时间
time(&rawtime);
timeinfo = localtime(&rawtime);
// 构造时间戳
strftime(data, sizeof(data), "%Y-%m-%d %H:%M:%S", timeinfo);
// 写入数据和时间戳
fprintf(fp, "%s %s\n", data, data);
// 等待一段时间再采集下一条数据
sleep(1);
}
// 关闭文件
fclose(fp);
return 0;
}
```
这个程序会循环采集数据并写入一个以当前时间命名的文件中,每行数据都包含时间戳的标准时间格式。
生成文件名打印到字符串里
生成文件名并打印到字符串中可以使用C++标准库中的`std::ostringstream`类。以下是一个示例代码,可以将当前时间戳作为文件名打印到字符串中:
```c++
#include <iostream>
#include <sstream>
#include <chrono>
int main() {
std::ostringstream filename;
auto now = std::chrono::system_clock::now();
auto timestamp = std::chrono::duration_cast<std::chrono::milliseconds>(now.time_since_epoch()).count();
filename << "file_" << timestamp << ".txt";
std::cout << filename.str() << std::endl;
return 0;
}
```
解析:
- `std::ostringstream`是一个流(stream)类,可以将数据写入到字符串中。
- `std::chrono`是一个时间库,可以获取当前时间戳。
- `std::chrono::system_clock::now()`获取当前时间。
- `std::chrono::duration_cast<std::chrono::milliseconds>`将时间转换为毫秒数。
- `filename << "file_" << timestamp << ".txt"`将文件名拼接起来。
- `filename.str()`获取字符串流中的字符串内容。
阅读全文