钉钉直播导出观看时长数据统计(c语言)

本文介绍如何使用C语言处理钉钉直播导出的CSV数据,包括提取总时长、观看者及其观看时长以及未观看者信息。通过读取CSV文件,解析特定格式的数据,并提供三种操作选项:查看当前文件观看信息、总观看数据和输出到Excel表格。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

每场钉钉直播都可以导出数据,记录着直播总时长与观看的人员及时长和未观看的人员,接下来的介绍是针对多个导出的Excel文件进行总数据收集。

csv格式:

Excel中文件会以文本形式一行行显示,单元格之间转换为逗号

从钉钉导出的数据为.xls格式,这里我们需要打开.xls表格并另存为.csv格式,我们采用一行行读取数据
思路如下:

1)提取总时长

根据钉钉导出数据的格式,参考转化后的.csv格式文件的内容,用文本文件打开转格式后的.csv文件,很容易知道,在csv中第五行第四个逗号后面的内容即为本场直播的总时长,格式为固定的 hh:mm:ss,我们以分钟为单位提取出来

2)提取观看者及观看时长

观察csv文件,也易知第九行为第一个学生的名字,第一个逗号为观看者的姓名,第二个逗号后面为观看者观看的时长,时长分为两种:
1.xx小时xx分钟
2.xx分钟
用分支语句以两种方式提取
然后继续读取下一行,即下一个观看者的数据

3)提取未观看者的信息

观察csv文件,易知在未观看学生一行的上面有固定两行逗号
未观看学生一行下面的信息有两种情况
1.有未观看者,即在下面出现未观看者的信息,提取第一个逗号前的名字,继续读取下一个行,遇到一行逗号截止
2.无未观看者,即在下行就只有一行逗号

使用方法

按1输入你的csv文件名,会输出当前文件的观看信息,即截止目前(即前面输入的所有文档数据)的总观看数据,
按2输出总观看数据
按3输出到Excel表格中
在这里插入图片描述
这里记住都要与生成的.exe程序放在同一个目录下:
在这里插入图片描述

源码附录:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

struct Mess
{
   
	char name[50];
	int time;//分钟为单位 
	int all; 
}mess[1000]; 
int Mess_SearchByIndex(int id);//查找姓名
void Mess_Display();//输出截止目前观看者的信息 
void Mess_out();//将截止目前汇总的信息导入Excel文件中
void IO_ReadInfo();//读出文件 
void IO_WriteInfo();//读入文件 
 
int num=0;


int Mess_SearchByIndex(char *a)
{
   
     int i;
     for (i=0;i<num;i++)
     {
   
         if (strcmp(a,mess[i].name)==0)
         {
   
              return i;
         }
     }
     
     strcpy(mess[num].name,a);
     mess[num].time=0;
     mess[num].all=0;
     num++;
     return num-1;
}

void Mess_Insert()
{
   
	FILE *fp;
	int time1=0;
	char da[100];
	char filename[100];
	printf("请输入你的csv文件名:\n");
	scanf("%s",filename);
	fp=fopen(filename,"r");
	if(!fp)
	printf("sh
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值