/*---------------------------------------------------------------------------*/ /*gccPSHD-gnuplot.c*/ /*---------------------------------------------------------------------------*/ #include #include #include #define Nmax 100 void main_part(char fnameR[],char fnameW[]); void Trim(char *s); /*---------------------------------------------------------------------------*/ int main(int argc,char *argv[]) { char fnameR[50]; /*入力csvファイル名*/ char fnameW[50]; /*出力txtファイル名*/ strcpy(fnameR,argv[1]); strcpy(fnameW,argv[2]); main_part(fnameR,fnameW); return 0; } /*---------------------------------------------------------------------------*/ void main_part(char fnameR[],char fnameW[]) { FILE *fin,*fout; char dat[256]; char str[100],str0[50],str1[50],str2[50],str3[50],str4[50],str5[50]; char fnameF[50]; /*出力epsファイル名*/ char sxjiku[100],syjiku[100]; double xmin,xmax,dx,ymin,ymax,dy,xx,yy,dlx,dly; int nd,i,k; char ps_name[Nmax][50],ps_type[Nmax][50],st_class[Nmax][50],tbrl[Nmax][50]; double co_YEAR[Nmax],ps_HD[Nmax]; int mark[Nmax]; /***********************************************/ /*データ入力*/ /***********************************************/ fin=fopen(fnameR,"r"); fgets(dat,sizeof dat,fin); strcpy(fnameF,strtok(dat,",")); fgets(dat,sizeof dat,fin); strcpy(sxjiku,strtok(dat,",")); strcpy(syjiku,strtok(NULL,",")); fgets(dat,sizeof dat,fin); xmin=atof(strtok(dat,",")); xmax=atof(strtok(NULL,",")); dx =atof(strtok(NULL,",")); fgets(dat,sizeof dat,fin); ymin=atof(strtok(dat,",")); ymax=atof(strtok(NULL,",")); dy =atof(strtok(NULL,",")); fgets(dat,sizeof dat,fin); nd=atoi(strtok(dat,",")); fgets(dat,sizeof dat,fin); k = 0; for (i=0;i<=nd-1;i++){ fgets(dat,sizeof dat,fin); strcpy(str0,strtok(dat,",")) ;Trim(str0); strcpy(str1,strtok(NULL,","));Trim(str1); strcpy(str2,strtok(NULL,","));Trim(str2); strcpy(str3,strtok(NULL,","));Trim(str3); strcpy(str4,strtok(NULL,","));Trim(str4); strcpy(str5,strtok(NULL,","));Trim(str5); if(strstr(str5,"0")==NULL){ strcpy(ps_name[k],str0); strcpy(ps_type[k],str1); co_YEAR[k]=atof(str2); ps_HD[k] =atof(str3); strcpy(st_class[k],str4); strcpy(tbrl[k],str5); if(0=0;i--){ if(s[i]!=' ')break; } s[i+1]='\0'; /*先頭から空白でない位置を捜しその位置以降をstrcpy*/ for(i=0;i<=strlen(s);i++){ if(s[i]!=' ')break; } strcpy(s,&s[i]); } /*---------------------------------------------------------------------------*/