c++ - 如何在 C++ 中动态生成带有序号的文件名
问题描述
我想生成在其文件名中具有序列号的文件,其数字具有相同的宽度(附加零),如文件名应该生成如下: File_001.txt File_002.txt ..... File_020.txt
`
int main()
{
for(int i=1; i<=20; i++)
{
std::string file = "File_"+std::to_string(i)+".txt";
}
}
`
使用上面的代码,生成的文件名是: File_1.txt ...... File_20.txt
但我想生成如上所述的文件名
解决方案
您需要使用std::setfill
和std::setw
。检查这个例子:
#include <iomanip>
#include <iostream>
int main(){
for(int i = 0; i < 100; ++i){
std::stringstream ss;
ss << std::setfill('0') << std::setw(3);
ss << i;
std::string my_filename = ss.str();
std::cout << my_filename << std::endl;
}
}
推荐阅读
- google-cloud-platform - Terraform GCP Notebook 实例调度程序
- sharepoint - 有什么方法可以添加动态下拉列表,其值来自在线 Sharepoint 中的 API
- django - 部署到 AWS 弹性 beantalk 时,CSRF 验证失败并出现 403 错误
- sql - 如何在 PostgreSQL 查询中创建条件?
- firedac - Binary(16) MSSQL 字段的批量转换
- django - 为什么 Sum 的小数点后有很多数字?
- java - Android 从文件中加载文本作为 InputStream
- laravel - laravel8 livewire 选择选项输入上的问题试图获取非对象的属性
- c++ - 使用静态变量每 N 次执行一个通用函数
- react-native - 从远程 json 文件加载样式 - React Native