- 使用
snprintf格式化字符串- 使用
boost::format格式化字符串- 使用
stringstream格式化字符串
具体示例
- 使用
snprintf格式化字符串
#include <stdio.h> using std::string; // 准备数据 string haha("haha"); int num = 3; // 准备格式 string fmt("test string: %s. test number: %d"); char targetString[1024]; // 格式化,并获取最终需要的字符串 int realLen = snprintf( targetString, sizeof(targetString), fmt.c_str(), haha.c_str(), num );
参考链接:http://www.cplusplus.com/reference/cstdio/snprintf/
- 使用
boost::format格式化字符串
#include "boost/format.hpp" // 准备数据 string haha("haha"); int num = 3; // 准备格式 boost::format fmt("test string: %s. test number: %d"); // 格式化 fmt % haha % num; // 获取最终需要的字符串 string targetString = fmt.str();
参考链接:https://www.boost.org/doc/libs/1_70_0/libs/format/example/sample_formats.cpp
- 使用
stringstream格式化字符串
#include <sstream> using std::stringstream; // 准备数据 string haha("haha"); int num = 3; // 准备根据格式造字符串流 stringstream fmt; /* 或者使用 ostringstream */ // 造字符串流 fmt << "test string: " << haha << ". test number: " << num; // 获取最终需要的字符串 string targetString = fmt.str();
参考链接:http://www.cplusplus.com/reference/ostream/ostream/operator<
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231957.html原文链接:https://javaforall.net
