gpt4 book ai didi

c# - 如何将 JavaScript double 组转换为 .NET double 组?

转载 作者:太空宇宙 更新时间:2023-11-03 14:34:45 24 4
gpt4 key购买 nike

转换 JavaScript double 组的最佳方法是什么

return [2.145, 1.111, 7.893];

当从 web 浏览器控件文档对象返回 Javascript 数组时,转换为 .NET double 组

object o = Document.InvokeScript("getMapPanelRegion");

不使用字符串和解析?

返回的对象是 __ComObject 类型,因为它是一个返回的数组。该数组将是固定大小,因为我使用它来将三个值返回给调用代码。我目前的解决方案是返回一个 |三个值的分隔字符串,然后拆分并解析字符串以获得我的三个 double 。如果可能的话,我希望不必使用字符串操作,因为这感觉就像一个 hack。

最佳答案

来自 MSDN (HtmlDocument.InvokeScript Method) :

The underlying type of the object returned by InvokeScript will vary. If the called Active Scripting function returns scalar data, such as a string or an integer, it will be returned as a string ...

似乎整数将作为字符串返回,您可以假设这同样适用于 double 。

编辑:我忘了你在谈论一个数组。无论如何,MSDN 继续:

... If it returns a script-based object, such as an object created using JScript or VBScript's new operator, it will be of type Object ...

所以看起来您将获得一个对象,但这无济于事,因为您必须在 C# 代码中转换它。

编辑 2:

至于实际ComObject的转换。看完this这是关于 Excel 的,但它仍然返回一个 ComObject,看来您当前使用字符串的方法似乎更简单。有时 hack 是最好的解决方案 :D

关于c# - 如何将 JavaScript double 组转换为 .NET double 组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1502453/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com