Delphi中TJSONObject使用问题

jsonProcess:= TJSONArray.Create;
for var i := 0 to processForms.ListView_Processes.Items.
  Count - 1 do
begin
  tempListItem := processForms.ListView_Processes.Items[i];
  var
  jsonObject := TJSONObject.Create;
  try
    jsonObject.AddPair('pid', tempListItem.Caption);
    jsonObject.AddPair('processName', tempListItem.SubItems[0]);
    jsonProcess.AddElement(jsonObject);
  finally
    jsonObject.Free;
  end;
end;
jsonProcess:= TJSONArray.Create;
for var i := 0 to processForms.ListView_Processes.Items.Count - 1 do
begin
  tempListItem := processForms.ListView_Processes.Items[i];
  var
  jsonObject := TJSONObject.Create;
  try
    jsonObject.AddPair('pid', tempListItem.Caption);
    jsonObject.AddPair('processName', tempListItem.SubItems[0]);
    jsonProcess.AddElement(jsonObject);
  except
    jsonObject.Free;
  end;
end;

重点关注finally和except,第二个可以执行成功拿到jsonProcess,而第一个不行

posted @ 2024-10-31 21:00  jishaleng  阅读(51)  评论(0编辑  收藏  举报