1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<conio.h> 4 #include<string.h> 5 FILE *fp; 6 int menu(void)/*定义主菜单*/ 7 { 8 int ch; 9 system("cls"); 10 printf("╔═╧╧欢迎使用文件创建系统╧╧═╗\n"); 11 printf("║※1.当前目录 ║\n"); 12 printf("║※2.桌面 ║\n"); 13 printf("║※3.D盘根目录 ║\n"); 14 printf("║※4.自定义路径 ║\n"); 15 printf("║※5.放弃 ║\n"); 16 printf("╚════════════════╝\n"); 17 printf("请选择新建文件的路径:"); 18 scanf("%d",&ch); 19 system("cls"); 20 if(ch<1||ch>4)/*假如输入的数不是0~4,置为0*/ 21 return 0; 22 return ch; 23 } 24 main()/*主函数*/ 25 { 26 char n; 27 char file[20]={0},folder[30]={0}; 28 system("color f0"); 29 system("title 创建文件"); 30 system("mode con cols=40 lines=10"); 31 switch(menu()) 32 { 33 case 1: break; 34 case 2: 35 { 36 strcpy(folder,"C:/Users/jebel/Desktop/"); 37 break; 38 } 39 case 3: 40 { 41 strcpy(folder,"D:/"); 42 break; 43 } 44 case 4: 45 { 46 system("color f0"); 47 printf("输入路径:"); 48 scanf("%s",folder); 49 strcat(folder,"/");/*在后面加上“/”*/ 50 break; 51 } 52 case 0: exit(0); 53 } 54 system("color fc"); 55 printf("请输入新建文件的文件名\n(*.*):"); 56 scanf("%s",file); 57 if((fp=fopen(strcat(folder,file),"w"))==NULL)/*假如没有那个文件,退出*/ 58 { 59 printf("can't open file\n"); 60 exit(1); 61 } 62 system("cls");/*清屏*/ 63 system ("color fb"); 64 printf("创建成功!,你可以进入编辑了!(按ESC退出编辑):\n"); 65 while(1) 66 { 67 n=getch(); 68 if(n==27) 69 break; 70 fputc(n,fp);/*编辑文件(主要是文本文件)*/ 71 printf("%c",n); 72 if(n==13)/*输入回车,打印回车*/ 73 printf("\n"); 74 if(n==8)/*输入退格,打印退格*/ 75 printf("\b"); 76 } 77 fclose(fp);/*关闭文件*/ 78 }