⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readtxt.c

📁 这是Linux下可以自动读取TXT文档内的数据并且可以将参数存储到数组中
💻 C
字号:
#include <stdio.h>#include <string.h>#include <stdlib.h>#include <sys/types.h>#define BUFFERSIZE 1024  int cifang(int num)       //求10的次方{int i;int j=1;  if(num==0)  {return 1;   }  for(i=0;i<num;i++)  {j=j*10;   }   return j;}  char chartoint(char ch)   //将ASCII码转化为整数{    if((ch>='0')&&(ch<='9'))           return ch-0x30;}  int buftoint(char* buf,int num)    //将buf中的字符串转化为整数 {   int i;  int total=0;  for(i=0;i<num;i++)   {total+=(chartoint(*(buf+i)))*(cifang(num-i-1));    }   return total;}int main(void){  char buf[BUFFERSIZE];  //存储要显示的Panel信息  char zifu[BUFFERSIZE];      //存储Panel的各种参数设置  int canshu[BUFFERSIZE];    char temp_canshu[BUFFERSIZE];  int i;  int j;  //要显示的字符的数量  int charnum=0;  //要设置的参数的个数  int canshunum;  int intnum;  char temp;  int k;  //  memset(buf,0,BUFFERSIZE*sizeof(char));  FILE* source;  //打开txt文档 if(!(source=fopen("test.txt","r")))     {printf("Error in opening file.\n");exit(0);}while(fread(buf,sizeof(buf),1,source)==1){} //读取Panel的显示信息for(i=0;i<BUFFERSIZE;i++){temp=buf[i]; if(temp==' ')   {break;   }zifu[charnum]=temp;   charnum++;}k=0;j=0;//读取Panel的参数设置for(i=charnum+1;i<BUFFERSIZE;i++){ temp=buf[i]; temp_canshu[j]=temp; j++;  //判断是否到文档末尾  if((buf[i+1]=='\n')|((buf[i+1]==' ')&(buf[i+2]=='\n'))) {canshu[k]=buftoint(temp_canshu,intnum+1);  break; } //判断是否有空格 参数之间以空格为隔开标志 if(temp==' ')   {   canshu[k]=buftoint(temp_canshu,intnum);   k++;   j=0;   intnum=0;   continue;     }  intnum++;}canshunum=k+1;for(i=0;i<canshunum;i++){printf("canshu[%d]=%d\n",i,canshu[i]);}printf("canshunum=%d\n",canshunum);//关闭txt文档if(fclose(source)){printf("Error in close file");}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -