//此代码唯一缺点为对文件内的G代码格式要求高,数据必须一一对齐。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
#include <Windows.h>
void WriteFileFunc(char* tStr)//对文件进行写
{
FILE* fp = fopen(tStr, "w");
if (!fp)
{
perror("File open fail");
return -1;
}
fprintf(fp, "G%dX%dY%dZ%d\n", 01, 10, 20, 50);
fprintf(fp, "G%dX%dY%dZ%d\n", 02, 20, 30, 100);
fprintf(fp, "G%dX%dY%dZ%d\n", 03, 40, 60, 150);
fclose(fp);
}
void ReadFileFunc(char* tStr)//对文件进行读以及解析
{
int ma, mb, mc, md;
FILE* fp = fopen(tStr, "r");
if (!fp)
{
perror("File open fail");
return -1;
}
while (1)
{
fscanf(fp, "G%dX%dY%dZ%d\n", &ma, &mb, &mc, &md);//对文件进行解析
printf("%d %d %d %d\n", ma, mb, mc, md);
if (feof(fp))//判断文件指针是否到文件末尾
break;
}
fclose(fp);
}
int main(void)
{
char* mFilepath = "01-源.txt";//文件名(相对项目文件.vcxproj的路径)
WriteFileFunc(mFilepath);
ReadFileFunc(mFilepath);
return EXIT_SUCCESS;
}
程序运行结果示意图。