zwq8629 发表于 5 天前

图元中的JSON数据记录修改问题



原本是想要 提取图元中的JSON数据记录,并修改Title值, 然后把修改后的数据记录写回图元

现在问题是修改后的数据记录是追加再原始数据记录后面的,请大神指点下

loveu515 发表于 5 天前

cam吗{:1_1:}

vitalgg 发表于 5 天前

本帖最后由 vitalgg 于 2025-5-18 00:17 编辑

如果用lisp的话,其实json转成list表更合适。
但是你这里有大数(时间戳)。转换后时间戳会失真。





json就是js对象的序列化。
所以建议调用外部处理程序。如msscriptcontrol ,nodejs. python . 以对象的方式处理应该更好。

jstr = > 对象
对象.title = "abc"
对象 => json.stringify

zwq8629 发表于 3 天前

vitalgg 发表于 2025-5-17 23:56
如果用lisp的话,其实json转成list表更合适。
但是你这里有大数(时间戳)。转换后时间戳会失真。



选择对象: 找到 1 个
选择对象:

处理图元ID: 3A4
找到数据记录:{
"$type": "XYCAM.Models.Shell.Home.HoleEntityModel, XYCAM.Models",
"UsedNoCore": false,
"UsedFeedConvex": false,
"UsedOriGroove": false,
"UsedAttachedTaper": false,
"UsedRotFeed": false,
"DisableInsideShapeWireOff": false,
"AttachedTaperModel": {
    "$type": "XYCAM.Models.WedmPathExtensionModel.WeAttachedTaperModel, XYCAM.Models",
    "CuttingNumber": 0,
    "Taper": 0.0,
    "MinRadius": 0.0,
    "AllowMinRadius": false,
    "UsedEqualsArc": false,
    "UsedNearTheFront": false
},
"Title": "圆形孔",
"WedmType": 0,
"ImagePath": "pack://application:,,,/XYCAM.UI;component/Resources/Images/Wedm/Hole2d.png",
"Gap": 0.0,
"MainHeight": 0.0,
"SubHeight": 0.0,
"ClearLength": 20.0,
"Tap": 1.0,
"UserVariable": 0.0,
"NumberOfProcesses": 2,
"MainPathColorIndex": 3,
"SubPathColorIndex": 1,
"DischargeCreateTime": 133683351348161299,
"ShapeCreateTime": 133920083727714347,
"ChildsShapeCreateTime": 133920083727714347,
"HasLeadingLine": false,
"HasAuxiliaryCutOffLine": false,
"IsCirclePath": false,
"Index": 1,
"OnlyFirstProcessRunTaper": false,
"TaperMode": 0,
"UsePreprocessShape": false,
"QueryOptions": {
    "$type": "XYCAM.Models.Database.DischargePramaQueryOptions, XYCAM.Models",
    "Materials": "S136H",
    "Height": 30.0,
    "Diameter": 0.25,
    "AutoRefresh": false,
    "DatabasePath": "",
    "TableName": "SODICK"
},
"LocalCuttingMode": 3,
"Parameters": [
    {
      "$type": "XYCAM.Models.Database.DischargeParameter, XYCAM.Models",
      "ID": 1057,
      "Diameter": 0.25,
      "Materials": "S136H",
      "Height": 30.0,
      "Type": "内孔",
      "Times": 3,
      "RunCount": 1,
      "DischParamCode": 1,
      "OffsetCode": 1,
      "OffsetValue": 0.215,
      "Speed": 3.5,
      "UserData1": "",
      "UserData2": "",
      "UserData3": ""
    },
    {
      "$type": "XYCAM.Models.Database.DischargeParameter, XYCAM.Models",
      "ID": 1059,
      "Diameter": 0.25,
      "Materials": "S136H",
      "Height": 30.0,
      "Type": "内孔",
      "Times": 3,
      "RunCount": 2,
      "DischParamCode": 2,
      "OffsetCode": 2,
      "OffsetValue": 0.148,
      "Speed": 5.5,
      "UserData1": "",
      "UserData2": "",
      "UserData3": ""
    },
    {
      "$type": "XYCAM.Models.Database.DischargeParameter, XYCAM.Models",
      "ID": 1061,
      "Diameter": 0.25,
      "Materials": "S136H",
      "Height": 30.0,
      "Type": "内孔",
      "Times": 3,
      "RunCount": 3,
      "DischParamCode": 3,
      "OffsetCode": 3,
      "OffsetValue": 0.134,
      "Speed": 7.5,
      "UserData1": "",
      "UserData2": "",
      "UserData3": ""
    }
],
"ExtensionDatas": {
    "$type": "System.Collections.Generic.List`1[], mscorlib",
    "$values": []
},
"SplitParmas": null,
"HasAngle": false,
"ReverseClockWise": false,
"CornerTags": [],
"UsedAvoidRadius": false,
"UsedAutoRadius": false,
"UsedAutoCorner": false,
"UsedAutoClear": false,
"AutoCleanCornerMode": 0,
"AutoCornerProcessMode": 1,
"AutoCleanCornerProcessMode": 1
}
标题: 圆形孔
找到数据记录:{
"$type": "XYCAM.Models.Shell.Home.HoleEntityModel, XYCAM.Models",
"UsedNoCore": false,
"UsedFeedConvex": false,
"UsedOriGroove": false,
"UsedAttachedTaper": false,
"UsedRotFeed": false,
"DisableInsideShapeWireOff": false,
"AttachedTaperModel": {
    "$type": "XYCAM.Models.WedmPathExtensionModel.WeAttachedTaperModel, XYCAM.Models",
    "CuttingNumber": 0,
    "Taper": 0.0,
    "MinRadius": 0.0,
    "AllowMinRadius": false,
    "UsedEqualsArc": false,
    "UsedNearTheFront": false
},
"Title": "圆形孔Z",
"WedmType": 0,
"ImagePath": "pack://application:,,,/XYCAM.UI;component/Resources/Images/Wedm/Hole2d.png",
"Gap": 0.0,
"MainHeight": 0.0,
"SubHeight": 0.0,
"ClearLength": 20.0,
"Tap": 1.0,
"UserVariable": 0.0,
"NumberOfProcesses": 2,
"MainPathColorIndex": 3,
"SubPathColorIndex": 1,
"DischargeCreateTime": 133683351348161299,
"ShapeCreateTime": 133920083727714347,
"ChildsShapeCreateTime": 133920083727714347,
"HasLeadingLine": false,
"HasAuxiliaryCutOffLine": false,
"IsCirclePath": false,
"Index": 1,
"OnlyFirstProcessRunTaper": false,
"TaperMode": 0,
"UsePreprocessShape": false,
"QueryOptions": {
    "$type": "XYCAM.Models.Database.DischargePramaQueryOptions, XYCAM.Models",
    "Height": 30.0,
    "Diameter": 0.25,
    "AutoRefresh": false,
    "DatabasePath": "",
    "TableName": "SODICK"
},
"LocalCuttingMode": 3,
"Parameters": [
    {
      "$type": "XYCAM.Models.Database.DischargeParameter, XYCAM.Models",
      "ID": 1057,
      "Diameter": 0.25,
      "Materials": "S136H",
      "Height": 30.0,
      "Type": "内孔",
      "Times": 3,
      "RunCount": 1,
      "DischParamCode": 1,
      "OffsetCode": 1,
      "OffsetValue": 0.215,
      "Speed": 3.5,
      "UserData1": "",
      "UserData2": "",
      "UserData3": ""
    },
    {
      "$type": "XYCAM.Models.Database.DischargeParameter, XYCAM.Models",
      "ID": 1059,
      "Diameter": 0.25,
      "Materials": "S136H",
      "Height": 30.0,
      "Type": "内孔",
      "Times": 3,
      "RunCount": 2,
      "DischParamCode": 2,
      "OffsetCode": 2,
      "OffsetValue": 0.148,
      "Speed": 5.5,
      "UserData1": "",
      "UserData2": "",
      "UserData3": ""
    },
    {
      "$type": "XYCAM.Models.Database.DischargeParameter, XYCAM.Models",
      "ID": 1061,
      "Diameter": 0.25,
      "Materials": "S136H",
      "Height": 30.0,
      "Type": "内孔",
      "Times": 3,
      "RunCount": 3,
      "DischParamCode": 3,
      "OffsetCode": 3,
      "OffsetValue": 0.134,
      "Speed": 7.5,
      "UserData1": "",
      "UserData2": "",
      "UserData3": ""
    }
],
"ExtensionDatas": {
    "$type": "System.Collections.Generic.List`1[], mscorlib",
    "$values": []
},
"SplitParmas": null,
"HasAngle": false,
"ReverseClockWise": false,
"CornerTags": [],
"UsedAvoidRadius": false,
"UsedAutoRadius": false,
"UsedAutoCorner": false,
"UsedAutoClear": false,
"AutoCleanCornerMode": 0,
"AutoCornerProcessMode": 1,
"AutoCleanCornerProcessMode": 1
}
标题: 圆形孔Z
处理完成! 共找到 2 个JSON数据记录


修改结束后,原数据记录追加在修改后的数据记录后面,    我只要修改后的数据记录

vitalgg 发表于 3 天前

本帖最后由 vitalgg 于 2025-5-19 09:34 编辑

你是说修改后,一个图元的记录里会有两条json数据?

我一般不用字符串截断的方式操作json数据,适配性太低,换个环境就不能用了。
页: [1]
查看完整版本: 图元中的JSON数据记录修改问题