一.简介

二.

<pre class="brush:cpp;gutter:true;">void readImgNamefromFile(char* fileName, vector<string>& imgNames)
{<br></br>  // vector清零,参数设置
  imgNames.clear();
  WIN32_FIND_DATA file;
  int i = 0;
  char tempFilePath[MAX_PATH + 1];
  char tempFileName[50];
  
  // 转换输入文件名
  sprintf(tempFilePath, "%s/*", fileName);<br></br><br></br> // 多字节转换<br></br> WCHAR wstr[MAX_PATH] = {0};<br></br> MultiByteToWideChar(CP_ACP, 0, tempFilePath, -1, wstr, sizeof(wstr));
  
  // 查找待操作文件的相关属性,读取到WIN32_FIND_DATA
  HANDLE handle = FindFirstFile(wstr, &file);
  if(handle != INVALID_HANDLE_VALUE)
  {
     FindNextFile(handle, &file);<br></br>   FindNextFile(handle, &file);
     
    // 循环遍历得到文件夹的所有文件名
    do
    {
      sprintf(tempFileName, "%s", fileName);
      imgNames.push_back(WChar2Ansi(file.cFileName));
      imgNames[i].insert(0, tempFileName);
      i++;
    } while(FindNextFile(handle, &file));
  }
  FindClose(handle);
}    

标签: Windows, handle, file, char, 文件夹, 读取, wstr, tempFileName, imgNames

相关文章推荐

添加新评论,含*的栏目为必填