📄 readtxt.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 + -