繁体   English   中英

如何将每个字符串保存在文本文件中 C++

[英]How to save each string in a text file C++

我有一个名为mytext.txt的 txt 文件,我想从中读取并保存C++每一行。 当我运行二进制文件时,我会执行./file <mytext.txt

我想做点什么

std::string line;
while(std::getline(std::cin,line)){
//here I want to save each line I scan}

但我不知道如何做到这一点。

您可以使用std::vector<string>将这些行保存如下:

///your includes here
#include <vector>

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

您可以查看以下文档和示例:

http://www.cplusplus.com/doc/tutorial/files/

根据推荐编辑:

在下面提供的链接中,他们解释了如何打开和关闭文本文件、读取行和写入行以及其他一些功能。 为了这个答案的完整性,下面将给出一个例子:

// writing on a text file
#include <iostream>
#include <fstream>
using namespace std;

int main () {
  ofstream myfile ("example.txt");
  if (myfile.is_open())
  {
    myfile << "This is a line.\n";
    myfile << "This is another line.\n";
    myfile.close();
  }
  else cout << "Unable to open file";
  return 0;
}

上面的脚本会将这两行写入名为 example.txt 的文本文件中。

然后,您可以使用类似的脚本阅读这些行:

// reading a text file
#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main () {
  string line;
  ifstream myfile ("example.txt");
  if (myfile.is_open())
  {
    while ( getline (myfile,line) )
    {
      cout << line << '\n';
    }
    myfile.close();
  }

  else cout << "Unable to open file"; 

  return 0;
}

此致

路德

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM