问题标签 [xsuperobject]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
390 浏览

delphi - 如何摆脱这个编译器警告?

TObject在 Delphi XE7 (Firemonkey) 中有几个类 (of),它们有一个属性AsJson

但是,编译器给我这些警告:

我正在查看的基类中TObject没有看到这样的东西,如果我要尝试使用它,它也不是一个有效的字段。我在文档中看不到有关此类属性的任何内容。仅当属性类型是(至少几周前来自 SVN ISuperObject)的最新版本时,才会出现这种情况。XSuperObject我也尝试过使用类型Integer,我也明白了。

这个警告在我的场景中意味着什么,我该如何摆脱它?

编辑

它似乎只在我有XSuperObject使用条款时才会发生......

上面的例子产生:

如果我只是删除XSuperObject,我不会收到此警告。我的 XSuperObject 副本已经有几周的历史了。

0 投票
1 回答
725 浏览

ios - 添加 XSuperObject 时项目无法在 iOS 中启动

我已经直接向 X-SuperObject 项目报告了这个问题,但我想我可能会在 Stack Overflow 上获得更多质量帮助。

使用 Delphi XE8,我在 iOS 模拟器(7.1、8.1、8.2 和 8.3)上使用 XSuperObject 时遇到问题。所以我开始了一个空的 Firemonkey 应用程序,开始添加一些我之前项目中的东西(此时我不知道问题是什么)。在我将最新的 XSuperObject 和 XSuperJSON 单元添加到我的应用程序之前,一切都运行良好。

在 iOS 模拟器中运行时,出现异常:

Project dyld_sim raised exception class EOSError with message 'System Error. Code: 2. No such file or directory.

我没有代码,除了添加单元(XSuperObject、XSuperJSON)和一些基本控件(面板、按钮和组合框)外,我没有做任何更改。

当我休息时,我需要:

System.SysUtils.RaiseLastOSError- 最后一行raise Error;

...这只是引发实际异常本身的地方,没有任何相关性。

因此,我打开了主项目文件并在第一行放置了一个断点,Application.Initialize;但从未达到该断点。我还在 XSuperObject 和 XSuperJSON 的“初始化”中设置了断点,它们都没有停止。

调用堆栈

一旦我删除了两个单元,一切都恢复了。

这里出了什么问题,我该如何解决?

  • X-SuperObject 版本:在报告之前从此处提取更新
  • Delphi XE8 版本 22.0.19027.8951(无更新)
  • IDE 操作系统:Windows 7 SP1(版本 6.1,Build 7601,64 位)
  • Mac 操作系统:OS-X 10.10.3
  • 目标操作系统:iOS 模拟器 - iPad Air / iOS 8.2 (12D508)

注意:以上版本详细信息只是一个具体示例,但我无法让它在任何 iOS 设备/版本上运行。

更新:调试系统(第115单元初始化)后,我来了解引发异常的点。在System.RegularExpressionsCore第 680 行...

而里面LoadPCRELib...

在仅使用此单元运行项目时,它运行得很好。

所以它似乎无法找到/usr/lib/libpcre.dylib,但前提是我使用的是 X-SuperObject。

我已经更新了我的所有环境,包括 OS-X、XCode、iOS 模拟器和 Delphi IDE 中的 SDK 链接(全部删除并重新创建它们)。我已经验证了 SDK 和 iOS 版本完全匹配。但问题仍然存在。

0 投票
1 回答
253 浏览

json - Delphi XE7:如何让 XSuperObject 输出重音字符?

此代码在 Memo1 中产生以下输出:

为什么我在输出中得到 \u00ea 和 \u00eb ,我应该怎么做才能得到正确的重音字符?

0 投票
0 回答
344 浏览

json - Delphi XE7:如何正确地从类+接口对派生?(XSuperObject: ISuperArray+TSuperArray)

我需要在 XSuperObject 库中的 TObjectArray 类中添加一些功能。我可以直接将它添加到 XSuperObject.pas 的源代码中,但这不是我应该这样做的。相反,我想从 ISuperArray/TSuperArray 对派生我自己的接口+类。但是怎么做?我知道如何自己派生一个类,但在涉及接口时我从来没有这样做过。

XSuperObject.pas 定义这些类如下:

我想做的是:

或者我也应该同时从接口派生?也许是这样的?

所以我的问题是:我如何正确地从 ISuperArray/TSuperArray 派生我自己的类/接口?
如果我也必须从接口派生,是否还需要复制 GUID、创建新的 GUID 或删除 GUID?

第二个问题:XSuperObject.pas 定义了 2 个函数:SO 和 SA,分别用于初始化 SuperObject。超级阵列。SA 函数会与我的派生接口/类保持兼容吗?或者在我从中派生后它不会与分配兼容吗?
(也许类型转换可以帮助那里?)

0 投票
2 回答
1784 浏览

json - 如何使用 X-SuperObject 访问 JSON 中的嵌套值

我想从这个 json 中获取所有用户。

现在,我尝试获取所有用户名。

第二次尝试..我得到一个 AV !

这个 JSON 中有 200 个用户名值我什么也没得到,有时当我尝试使用 json 代码时,我的问题是,如何正确解析这个 json 以获取值username?谢谢你。

0 投票
1 回答
216 浏览

delphi - 如何使用 XSuperObject 查询仅包含 [] 的 JSON 数组

我有这个数组:

我需要使用 XSuperObject 得到这些结果。目前,根据我对 XSuperObject 库的理解,您需要这样的东西来获取数据:

GetJSONValue 是一个定义为的函数:

这适用于以这种 JSON 格式返回的数组:

我如何让 XSuperObject 库为顶部的数组工作。

任何帮助将不胜感激。

提前致谢。

0 投票
1 回答
570 浏览

delphi - 如何使用 XsuperObject 从 JSON 响应中收集值

我想使用 xSuperObject 解析这个 JSON:

这是我的代码:

我想从 JSON 中收集所有用户名值,但我的代码引发了 AccessViolation。

0 投票
1 回答
206 浏览

json - 在 Delphi 10.4 中使用 ISuperObject 从 JSON 中提取值

从此 JSON(摘自完整示例):

我尝试提取的值username

我收到此代码的访问冲突。使用 Delphi 10.4 和 X-SuperObject 最新版本。

0 投票
1 回答
80 浏览

json - 获取类的一些字段到 JSON

如何获取仅包含名称和标志的 JSON?

通常用于该类的所有字段:

但有时我只需要一个带有名称和标志字段的 JSON。目前,为了获得这样的 JSON,我使用这样的代码:

但我认为不是最佳代码(实际上在实际代码中我有 15 个字段,需要删除 12 个)。如何更快地做到这一点?

更新(另一种方法):

可能这对我的目的会更快更有用吗?