如何将 ifstream 或字符串输入转换为字符

How do I convert ifstream or string input to char?

本文关键字:输入 转换 字符 字符串 ifstream      更新时间:2023-10-16

在此方法中,

void mainRoutine(char *pattern, string searchPattern)
{
        cout << "Please enter the string pattern to be searched: " << endl;
        getline(cin, searchPattern);
        ifstream filename(searchPattern.c_str());
        while(filename.good() && filename.peek() != EOF)
        {
                cout << (char)filename.get();
        }
        cout << "n";
        char *pattern = (char *)filename;
}

当用户输入一个字符串 - 要采用的文件名时,我想将此字符串转换为字符,以便我可以在其他方法中使用它。我该怎么做?

只需返回std::string

std::string mainRoutine()
{
  std::string searchPattern;
  std::cout << "Please enter the string pattern to be searched: n";
  std::cin >> searchPattern;
  std::cout << std::ifstream(searchPattern).rdbuf() << 'n';
  // searchPattern.c_str() if not using c++11
  return searchPattern
}
char* chFilNam = new char[fileName.length() + 1];
memcpy(chFilNam,fileName.c_str(),fileName.length());