鱼C论坛

 找回密码
 立即注册
查看: 2129|回复: 2

[已解决]C语言如何提取 txt 文档的内容

[复制链接]
发表于 2019-4-3 11:20:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
C语言内创一个二维指针 如何将 TXT 内容赋值给这个指针


19969        192        132        154        233        63        97
19971        96        15        248        5        184        201
19975        160        19        252        98        211        251
19976        194        86        14        9        104        82
19977        0        14        199        145        243        19
19978        128        174        211        133        35        132
19979        32        168        70        216        239        225



这些数据是文档内的一小部分内容

请各位大神指点一下, 用于做 K均值算法 联系
最佳答案
2019-4-3 13:25:01
本帖最后由 Croper 于 2019-4-3 17:29 编辑
  1. #include <stdio.h>

  2. const char* filepath="D:\\a.txt";             //文件位置
  3. const int FILE_COUNT_ROW_MAX=1024;            //估计最大行数,尽量往上设
  4. const int FILE_COUNT_COLUMN=7;                        //列数

  5. int main()
  6. {
  7.         FILE *file=fopen(filepath,"r");
  8.         if (file==NULL){
  9.                 printf("can't open file: %s",filepath);
  10.                 return 0;
  11.         }
  12.        
  13.         int *data[FILE_COUNT_ROW_MAX];
  14.         int datasize=0;
  15.         int flg_ret;
  16.         do{
  17.                 int *tmp=(int*)malloc(sizeof(int)*FILE_COUNT_COLUMN);
  18.                 memset(tmp,0,sizeof(int)*FILE_COUNT_COLUMN);
  19.                 int i;
  20.                 for (i=0;i<FILE_COUNT_COLUMN;++i){
  21.                         flg_ret=fscanf(file,"%d",tmp+i);
  22.                         if (flg_ret==EOF) break;
  23.                 }
  24.                 if (i!=0){
  25.                         data[datasize++]=tmp;
  26.                 }
  27.                 else{
  28.                         free(tmp);
  29.                 }
  30.         }while (flg_ret!=EOF);
  31.         fclose(file);
  32.        
  33.         //////////////文件读取完毕///////////////////
  34.         int i,j;
  35.         for (i=0;i<datasize;++i){
  36.                 for (j=0;j<7;++j){
  37.                         printf("%d\t",data[i][j]);
  38.                 }
  39.                 printf("\n");
  40.         }
  41.          
  42. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-4-3 12:24:44 | 显示全部楼层
用文件指针来操作,也可百度搜一下教程
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-3 13:25:01 | 显示全部楼层    本楼为最佳答案   
本帖最后由 Croper 于 2019-4-3 17:29 编辑
  1. #include <stdio.h>

  2. const char* filepath="D:\\a.txt";             //文件位置
  3. const int FILE_COUNT_ROW_MAX=1024;            //估计最大行数,尽量往上设
  4. const int FILE_COUNT_COLUMN=7;                        //列数

  5. int main()
  6. {
  7.         FILE *file=fopen(filepath,"r");
  8.         if (file==NULL){
  9.                 printf("can't open file: %s",filepath);
  10.                 return 0;
  11.         }
  12.        
  13.         int *data[FILE_COUNT_ROW_MAX];
  14.         int datasize=0;
  15.         int flg_ret;
  16.         do{
  17.                 int *tmp=(int*)malloc(sizeof(int)*FILE_COUNT_COLUMN);
  18.                 memset(tmp,0,sizeof(int)*FILE_COUNT_COLUMN);
  19.                 int i;
  20.                 for (i=0;i<FILE_COUNT_COLUMN;++i){
  21.                         flg_ret=fscanf(file,"%d",tmp+i);
  22.                         if (flg_ret==EOF) break;
  23.                 }
  24.                 if (i!=0){
  25.                         data[datasize++]=tmp;
  26.                 }
  27.                 else{
  28.                         free(tmp);
  29.                 }
  30.         }while (flg_ret!=EOF);
  31.         fclose(file);
  32.        
  33.         //////////////文件读取完毕///////////////////
  34.         int i,j;
  35.         for (i=0;i<datasize;++i){
  36.                 for (j=0;j<7;++j){
  37.                         printf("%d\t",data[i][j]);
  38.                 }
  39.                 printf("\n");
  40.         }
  41.          
  42. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-12 14:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表