我正在尝试使用c++中的win32程序解析文本文件。是否有一种简单的方法逐行读取文本文件?我的文本文件由我想存储在char数组中的字符串组成(const char * cArray [67])。这是我到目前为止所拥有的。我正在使用CreateFile和ReadFile。我从读取文件中收到访问冲突错误(0x000003e6):

CDECK::CDECK():filename(".\\Deck/list.txt")
{
    LPVOID data = NULL;
    hFile = CreateFileA(filename, GENERIC_READ,FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
    if(hFile == INVALID_HANDLE_VALUE)
        MessageBox(NULL, L"Failed to CreateFile - 'hFile'", L"CDECK::CDECK()", MB_OK);

    DWORD fileSize = GetFileSize(hFile, &fileSize);
    DWORD read = -1;
    if(!ReadFile(hFile, data, fileSize, &read, NULL))
    {
        DWORD err = GetLastError();
        MessageBox(NULL, L"Failed to ReadFile - 'hFile'", L"CDECK::CDECK()", MB_OK);
    }
    return;
}

最佳答案



是:

{
  std::ifstream hFile(filename);

  std::vector<std::string> lines;
  std::string line;
  while(std::getline(hFile, line))
    lines.push_back(line);

  return lines;
}

关于c++ - 使用WIN32读取文本文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10658465/

10-10 09:41