我有一个direct3d项目,它使用D3DXCreateTextureFromFile()来加载一些图像.此函数采用LPCWSTR作为文件路径.我想加载一系列连续编号的纹理(即MyImage0001.jpg,MyImage0002.jpg等)但是c ++的疯狂字符串让我很困惑.
我如何能:
for(int i=0; i < 3;i++)
{
//How do I convert i into a string path i can use with D3DXCreateTextureFromFile?
}
Run Code Online (Sandbox Code Playgroud)
编辑:
我应该提到我正在使用Visual Studio 2008的编译器
一种选择是std::swprintf:
wchar_t buffer[256];
std::swprintf(buffer, sizeof(buffer) / sizeof(*buffer),
L"MyImage%04d.jpg", i);
Run Code Online (Sandbox Code Playgroud)
你也可以使用std::wstringstream:
std::wstringstream ws;
ws << L"MyImage" << std::setw(4) << std::setfill(L'0') << i << L".jpg";
ws.str().c_str(); // get the underlying text array
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7686 次 |
| 最近记录: |