很多情况下,批处理图片后,会得到一系列的图片名称。比如说,我们对一幅图像进行旋转,最后得到360张旋转的图片。我们在命名输出的360张图片时,可以这样:
int m_nPicSum;//是图片的总数量,这里举例为360张
for(int i=0;i<m_nPicSum;i++)
{
//这个是文件头,一般是我们选择输出的文件夹的名,例如为F:\\res
//为什么用双\,因为是单\表示转义,不能这么用,具体见任一本C语言书
CString strResHead;
CString strNum;//输出的数量
strNum.Format("%d",i);
CString strGather;
//strGather=F:\\res\\i.jpg(i=0,1,2...)
strGather=strResHead + "\\" + strNum + ".jpg";
}
好了,上面就会得到我们想要的360张图片,分别是从0.jpg到359.jpg,那么,我们用CFindDialog来读取每一张图片时,我们可以写到一个文档txt里,会发现,得到的目录是这样的。

在使用MFC的CFindFile读取以数字命名的图片文件时,发现读取顺序并非0-359的顺序。原因是数字遍历按首位进行而非数值顺序。为了解决这个问题,可以通过特定的处理方式,如调整查找逻辑,确保读取顺序正确。最终实现了按0-359顺序读取图片,避免了批处理过程中的困扰。

7068

被折叠的 条评论
为什么被折叠?



