/* #TITLE# V18 を V14 に変換して読み込むマクロ */ /* MDL_READ18.MAC 2008.2.17 by kita */ hajime: clear(); search_f = "/home/acad/search.dat"; echo "ファイル名を入力してください"; file_name = gettxt(1); if (strstr(file_name,"MDL") < 0) { /* MDL無 */ file_name = file_name + ".MDL"; } if (strstr(file_name,"/") != 0) { /* 初期設定 MDL files dir */ file_name = fname("#MODEL#",file_name); } /* echo file_name; getany(1); */ cmd = "!ls " + file_name + " > " + search_f + " && cat -n " + search_f; [cmd] fp0 = fopen(search_f,"r"); ss = fgets(100,fp0); fclose(fp0); if(vtype(ss) != 4){ /* 文字列でないなら */ echo "ファイルがありません(で再入力、any key で終了)"; tmp = getany(1); if (vtype(tmp) == 5) { /* Entr キーのみ */ goto hajime; } else{ exit;} } label2: fp0 = fopen(search_f,"r"); echo "読み出しファイル番号を入力"; f_no = getnum(1); i = 0; do{ i = i+1; ss = fgets(100,fp0); if(vtype(ss) != 4){ /* 文字列型 */ fclose(fp0); echo "数字がでかすぎます(で再入力、any key で終了)"; tmp = getany(1); if (vtype(tmp) == 5) { /* Entr キーのみ */ goto label2; } else{ exit; } } if(i == f_no){ load_name = ss; break; } else{continue;} }while(true); fclose(fp0); n = subs(load_name,"\\n"); echo "処理中"; cmd = "! /home/acad18/exe/mdldconv -14 " + load_name + " > /home/acad/tmp#"; [cmd] echo "処理が終了しました"; getany(1); /*label_ss3:*/ fp = fopen("/home/acad/tmp","r"); ss1 = fgets(100,fp); ss2 = fgets(100,fp); ss3 = fgets(100,fp); fclose(fp); /* echo ss3; getany(1); */ /* if(vtype(ss3) != 4){ echo "読み込み中";goto label_ss3;}*/ if(strstr(ss3,"Error") >= 0){ echo "Versionが18ではありません"; goto hajime; } echo load_name "をDC完了. 読み込みますか? y(cr)/n"; yn = getany(1); type_yn = vtype(yn); if (type_yn == 5) { /* Entr キーのみ */ yn = "Y"; } else if (type_yn == 4) { /* 文字 */ yn = yn; } if(yn == "N"){ exit;} else if(yn == "Y"){ MODEL/READ [load_name] TEXT/GAPHOR 16 TEXT/GAPVER 16 } exit;