当前位置:首页 > 行业动态 > 正文

c语言种通讯录中怎么保存文件格式

在C语言中,可以使用文件操作函数来保存通讯录,下面是保存通讯录文件格式的详细步骤:

1、打开文件

使用fopen函数打开一个文件,用于写入数据,需要指定文件名和打开模式(以追加模式打开或覆盖模式打开)。

2、写入文件头

在文件中写入通讯录的头部信息,包括文件类型、版本号、记录数等,可以根据实际需求自定义头部信息的格式。

3、写入每个联系人的信息

遍历通讯录中的每个联系人,将其信息写入文件中,每个联系人的信息可以按照一定的格式进行组织,例如姓名、电话号码、邮箱等。

4、关闭文件

使用fclose函数关闭文件,释放资源。

下面是一个示例代码,演示了如何将通讯录保存为文本文件:

#include <stdio.h>
#include <string.h>
// 定义通讯录结构体
typedef struct {
    char name[50];
    char phone[20];
    char email[50];
} Contact;
int main() {
    // 创建通讯录数组并初始化
    Contact contacts[] = {
        {"Alice", "1234567890", "alice@example.com"},
        {"Bob", "0987654321", "bob@example.com"},
        {"Charlie", "1122334455", "charlie@example.com"}
    };
    int numContacts = sizeof(contacts) / sizeof(Contact);
    // 打开文件
    FILE *file = fopen("address_book.txt", "w"); // 以写入模式打开文件,如果不存在则创建新文件
    if (file == NULL) {
        printf("无法打开文件!
");
        return 1;
    }
    // 写入文件头
    fprintf(file, "通讯录文件
"); // 写入文件类型标识符和换行符
    fprintf(file, "版本: 1.0
"); // 写入版本号和换行符
    fprintf(file, "记录数: %d
", numContacts); // 写入记录数和换行符
    fprintf(file, "
"); // 写入一个空行作为分隔符
    // 写入每个联系人的信息
    for (int i = 0; i < numContacts; i++) {
        fprintf(file, "%d. %s
", i + 1, contacts[i].name); // 写入联系人编号和姓名,并添加换行符
        fprintf(file, "电话: %s
", contacts[i].phone); // 写入电话号码,并添加换行符
        fprintf(file, "邮箱: %s
", contacts[i].email); // 写入邮箱地址,并添加换行符
        fprintf(file, "
"); // 写入一个空行作为分隔符
    }
    // 关闭文件
    fclose(file); // 关闭文件指针,释放资源
    printf("通讯录已保存到文件!
"); // 提示保存成功的消息
    return 0;
}

上述代码中,首先定义了一个Contact结构体来表示通讯录中的每个联系人,然后创建了一个通讯录数组并初始化了一些联系人信息,接下来使用fopen函数以写入模式打开一个名为"address_book.txt"的文件,并将文件指针赋值给file变量,然后通过循环遍历通讯录中的每个联系人,使用fprintf函数将联系人的信息逐行写入文件中,最后使用fclose函数关闭文件指针,释放资源,运行该程序后,会在当前目录下生成一个名为"address_book.txt"的文件,其中包含了通讯录的头部信息和每个联系人的信息。

0

随机文章