21xrx.com
2024-09-20 06:12:15 Friday
登录
文章检索 我的文章 写文章
C++ 通讯录文件读取教程
2023-07-04 18:53:38 深夜i     --     --
C++ 通讯录 文件读取 教程 编程技能

通讯录是我们日常生活中不可或缺的工具,而在计算机编程中,使用文件存储通讯录数据也是一种常见的做法。在 C++ 编程中,读取文件中的通讯录信息是一个基础而又重要的概念。下面是一个简单的 C++ 通讯录文件读取教程,帮助大家了解如何读取通讯录数据。

首先,需要创建一个通讯录文本文件,并将通讯录数据写入该文件。每一行表示一个通讯录联系人的信息,可以按照以下的格式来组织:

张三,13888888888,beijing

李四,13900001111,shanghai

其中,每个联系人的信息由逗号分隔,包括姓名、电话号码以及地址。

接下来,使用 C++ 中的 ifstream 类来读取通讯录文件中的数据。这里假设通讯录文件名为 contacts.txt。代码如下:


#include <fstream>

#include <string>

#include <iostream>

using namespace std;

int main() {

  ifstream fin("contacts.txt");

  

  if (fin.is_open()) {

    string line;

    while (getline(fin, line))

      // 在这里处理每一行数据

    

  } else

    cout << "无法打开文件" << endl;

  

  

  fin.close();

  

  return 0;

}

该代码首先尝试打开 contacts.txt 文件,在打开成功后,使用 getline 函数逐行读取文件中的数据。在 while 循环中,每次读取一行数据,然后可以将其分解为姓名、电话和地址三个部分,具体代码如下:


#include <fstream>

#include <string>

#include <iostream>

using namespace std;

int main() {

  ifstream fin("contacts.txt");

  

  if (fin.is_open()) {

    string line;

    while (getline(fin, line)) {

      int p1 = line.find(",");

      int p2 = line.find(",", p1 + 1);

      

      string name = line.substr(0, p1);

      string phone = line.substr(p1 + 1, p2 - p1 - 1);

      string address = line.substr(p2 + 1);

      

      // 在这里处理每个联系人的信息

      cout << name << " " << phone << " " << address << endl;

    }

  } else

    cout << "无法打开文件" << endl;

  

  

  fin.close();

  

  return 0;

}

该代码定义了三个变量 p1、p2 和 line,使用 find 函数来查找逗号分隔的位置,然后使用 substr 函数来提取姓名、电话和地址信息。在循环处理每一行数据时,可以将这些信息输出到屏幕上,也可以进行其他操作,如存储到数组、结构体或数据库中等。

以上就是一个简单的 C++ 通讯录文件读取教程。通过阅读本教程,你应该了解到如何创建通讯录文本文件,并读取其中的数据。尽管代码简单,但是对于理解文件读取的基本概念和处理每行数据的方法很有帮助。希望本教程对你在编写 C++ 通讯录程序时提供一些有价值的指导。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复