UG爱好者
标题:
NX Open C/C++读INI配置文件和当前系统时间并新建prt
[打印本页]
作者:
seang*
时间:
2017-4-24 15:24
标题:
NX Open C/C++读INI配置文件和当前系统时间并新建prt
新建文件的文件名=路径+前缀+时间+.prt
其中路径和前缀通过本地配置文件定义
本帖相关代码:
https://github.com/Yang-ss/YX_Tools/tree/master/Code/New_part
项目代码:
https://github.com/Yang-ss/YX_Tools
核心代码如下:
// 读INI文件,NI文件如下
// [BuildNewpart]
// Prefix=Yang
// path=F:\\NX\\
//===============读INI配置文件==================================
INIParser ini_parser;
ini_parser.ReadINI("D:\\YX_Tools\\Configure\\config.ini");//INI文件路径
string FilePrefix=ini_parser.GetValue("BuildNewpart", "Prefix");//文件名前缀
string FilePath=ini_parser.GetValue("BuildNewpart", "path");//保存路径
ini_parser.Clear();
ini_parser.GetSize() ;
//===============获取当前系统时间==================================
time_t t = time(0);
char file_name[64];
strftime( file_name, sizeof(file_name), "%Y%m%d%H%M",localtime(&t) );
puts( file_name );
string file_path_name=FilePath+FilePrefix+"-"+file_name+".prt";//最终文件名=路径+前缀+时间+.prt
const char* FileName = file_path_name.data();//string转char*,file_path_name是string类型,FileName是char*类型
//===============输出测试==================================
// UF_initialize();
// const char* File_Prefix = FilePrefix.data();
// const char* File_Path = FilePath.data();
// UF_UI_open_listing_window();
// UF_UI_write_listing_window(File_Prefix);
// UF_UI_write_listing_window("\n");
// UF_UI_write_listing_window(File_Path);
// UF_UI_write_listing_window("\n");
// UF_UI_write_listing_window(FileName);
// UF_terminate();
//================新建文件=================================
NXOpen::FileNew *fileNew1;
fileNew1 = theSession->Parts()->FileNew();
fileNew1->SetTemplateFileName("model-plain-1-mm-template.prt");
fileNew1->SetUseBlankTemplate(false);
fileNew1->SetApplicationName("ModelTemplate");
fileNew1->SetUnits(NXOpen::Part::UnitsMillimeters);
fileNew1->SetRelationType("");
fileNew1->SetUsesMasterModel("No");
fileNew1->SetTemplateType(NXOpen::FileNewTemplateTypeItem);
fileNew1->SetTemplatePresentationName(NXString("\346\250\241\345\236\213", NXString::UTF8));
fileNew1->SetItemType("");
fileNew1->SetSpecialization("");
fileNew1->SetCanCreateAltrep(false);
fileNew1->SetNewFileName(FileName);
fileNew1->SetMasterFileName("");
fileNew1->SetMakeDisplayedPart(true);
NXOpen::NXObject *nXObject1;
nXObject1 = fileNew1->Commit();
NXOpen::Part *workPart(theSession->Parts()->Work());
NXOpen::Part *displayPart(theSession->Parts()->Display());
fileNew1->Destroy();
theSession->ApplicationSwitchImmediate("UG_APP_GATEWAY");
theSession->ApplicationSwitchImmediate("UG_APP_MODELING");
复制代码
欢迎光临 UG爱好者 (https://www.ugsnx.com/)
Powered by Discuz! X3.2