繁体   English   中英

Visual C ++从文件中保存/读取多个变量

[英]Visual C++ Save/Read Multiple Variables From A File

这是我的第一篇文章,对C ++还是相当陌生。 我目前正在寻找一种将多个变量保存到文件(XML或TXT)的方法,如下所示:

charactername:George
level:5

我也希望能够阅读这些内容并将它们放入变量中。

例如:

std::string characterName = "George";

(但它将从文件字符名:George中的行中读取George)

我总共需要1个文件中的68个变量(48个字符串,11个整数和9个布尔值)。

有谁知道这样做的方法或他们可以为我提供指导的教程? 我发现是将1个字符串保存到文件中,但不是多个不同类型的变量。

我认为您应该学习如何使用数据文件矩阵,

但是在此之前,这里有一些基本的文件管理代码供您尝试使用,您将能够读取数据并根据结构化布局对其进行恢复,而在恢复布尔数据时,请使用隐式转换来更改字符串。

以下是一些基本的文件操作,这将创建一个txt文件,其中包含新行中的数据:

    // basic file operations
    // 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";  // this will for data onto a new line to be read later.
        myfile.close();
      }
      else cout << "Unable to open file";
      return 0;
    }

如何恢复数据,这会将数据放入一个字符串数组,然后您可以使用它从代码中调用数据:

    // how to retrieve the data:
    #include <iostream>
    #include <fstream>
    #include <string>
    using namespace std;

    int main () {

      string line, data_array[67];
      ifstream myfile ("example.txt");
      if (myfile.is_open())
      {
        while ( getline (myfile,line) )
        {
           data_array[i] = line; i++;
        }
        myfile.close();
      }

      else cout << "Unable to open file"; 

      return 0;
    }

如何编辑数据,您将需要有一个函数来读取所有变量并重写整个文本文件,除非每一行与您不能直接跳转到的字节完全相同。

要更详细地了解您,您应该学习如何使用数据文件矩阵,以下是一些不错的视频,可以帮助您入门:

C ++教程(从数据文件矩阵读取行和列

C ++中的矩阵| 第一部分| 使用数组的简单矩阵定义

暂无
暂无

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

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