QQ登录

只需一步,快速开始

快捷登录

登录 或者 注册 请先

UG爱好者

查看: 2046|回复: 0
打印 上一主题 下一主题

[原创] NX Open C/C++读INI配置文件和当前系统时间并新建prt

[复制链接]

上尉

Rank: 6Rank: 6

19

主题

657

帖子

5670

积分

论坛贡献

跳转到指定楼层
楼主
发表于 2017-4-24 15:24:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

新建文件的文件名=路径+前缀+时间+.prt
其中路径和前缀通过本地配置文件定义

本帖相关代码:https://github.com/Yang-ss/YX_Tools/tree/master/Code/New_part
项目代码:https://github.com/Yang-ss/YX_Tools



核心代码如下:

  1. // 读INI文件,NI文件如下
  2. //         [BuildNewpart]
  3. //         Prefix=Yang
  4. //         path=F:\\NX\\
  5. //===============读INI配置文件==================================
  6.         INIParser ini_parser;
  7.         ini_parser.ReadINI("D:\\YX_Tools\\Configure\\config.ini");//INI文件路径
  8.         string FilePrefix=ini_parser.GetValue("BuildNewpart", "Prefix");//文件名前缀
  9.         string FilePath=ini_parser.GetValue("BuildNewpart", "path");//保存路径
  10.         ini_parser.Clear();
  11.         ini_parser.GetSize() ;
  12. //===============获取当前系统时间==================================
  13.         time_t  t = time(0);
  14.         char file_name[64];
  15.         strftime( file_name, sizeof(file_name), "%Y%m%d%H%M",localtime(&t) );
  16.         puts( file_name );
  17.         
  18.         string file_path_name=FilePath+FilePrefix+"-"+file_name+".prt";//最终文件名=路径+前缀+时间+.prt
  19.         const char* FileName = file_path_name.data();//string转char*,file_path_name是string类型,FileName是char*类型
  20. //===============输出测试==================================
  21. //                                UF_initialize();
  22. //                         const char* File_Prefix = FilePrefix.data();
  23. //                         const char* File_Path = FilePath.data();

  24. //                         UF_UI_open_listing_window();
  25. //                         UF_UI_write_listing_window(File_Prefix);
  26. //                         UF_UI_write_listing_window("\n");
  27. //                         UF_UI_write_listing_window(File_Path);        
  28. //                         UF_UI_write_listing_window("\n");
  29. //                         UF_UI_write_listing_window(FileName);
  30. //                         UF_terminate();
  31. //================新建文件=================================
  32.         NXOpen::FileNew *fileNew1;
  33.         fileNew1 = theSession->Parts()->FileNew();
  34.         fileNew1->SetTemplateFileName("model-plain-1-mm-template.prt");
  35.         fileNew1->SetUseBlankTemplate(false);
  36.         fileNew1->SetApplicationName("ModelTemplate");
  37.         fileNew1->SetUnits(NXOpen::Part::UnitsMillimeters);
  38.         fileNew1->SetRelationType("");
  39.         fileNew1->SetUsesMasterModel("No");
  40.         fileNew1->SetTemplateType(NXOpen::FileNewTemplateTypeItem);
  41.         fileNew1->SetTemplatePresentationName(NXString("\346\250\241\345\236\213", NXString::UTF8));
  42.         fileNew1->SetItemType("");
  43.         fileNew1->SetSpecialization("");
  44.         fileNew1->SetCanCreateAltrep(false);
  45.         fileNew1->SetNewFileName(FileName);
  46.         fileNew1->SetMasterFileName("");
  47.         fileNew1->SetMakeDisplayedPart(true);
  48.         NXOpen::NXObject *nXObject1;
  49.         nXObject1 = fileNew1->Commit();
  50.         NXOpen::Part *workPart(theSession->Parts()->Work());
  51.         NXOpen::Part *displayPart(theSession->Parts()->Display());
  52.         fileNew1->Destroy();
  53.         theSession->ApplicationSwitchImmediate("UG_APP_GATEWAY");
  54.         theSession->ApplicationSwitchImmediate("UG_APP_MODELING");
复制代码



版权声明  
本人声明此帖为本人原创帖,未经允许,不得转载!

有奖推广贴子: 

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

 
 
QQ:1359218528
工作时间:
9:00-17:00
 
微信公众号
手机APP
机械社区
微信小程序

手机版|UG爱好者论坛 ( 京ICP备10217105号-2 )    论坛管理员QQ:1359218528

本站信息均由会员发表,不代表本网站立场,如侵犯了您的权利请联系管理员,邮箱:1359218528@qq.com  

Powered by UG爱好者 X3.2  © 2001-2014 Comsenz Inc. GMT+8, 2024-4-26 22:09

返回顶部