【问题标题】:convert string to array | c# [closed]将字符串转换为数组 | c# [关闭]
【发布时间】:2021-01-22 20:53:51
【问题描述】:

我想将字符串 "{{1,2,3},{4,5,6},{7,8,9}}" 转换为数组。我可以这样做吗?

我正在从 binance.com 获取数据:

string str = Client.DownloadString("https://" + $"api.binance.com/api/v3/klines?symbol={symbol}&interval={interval}&startTime={startTime}&endTime={endTime}&limit={limit}");

返回是这样的:

[[1502942400000,"4261.48000000","4261.48000000","4261.48000000","4261.48000000","1.77518300",1502942459999,"7564.90685084",3,"0.07518300","320.39085084","7960.54017996"],[1502942460000,"4261.48000000","4261.48000000","4261.48000000","4261.48000000","0.00000000",1502942519999,"0.00000000",0,"0.00000000","0.00000000","7960.45262989"]]

我想将此字符串转换为数组。我将所有 '[' 和 ']' 更改为 '{' 和 '}'。我可以将这种类型的字符串转换为数组吗?

谢谢

【问题讨论】:

  • 一个字符串已经是一个数组(字符)。请澄清你的问题。预期的输出是什么?
  • "我想将字符串"{{1,2,3},{4,5,6},{7,8,9}}" 转换为数组。" - 请显示此示例字符串的预期结果。应该是[ [1, 2, 3], [4, 5, 6], [7, 8, 9] ] 吗?
  • string[] result = str.Replace("{", "").Replace("}", "").Split(","); 类似的东西?真的不清楚你的期望。例如,为什么将{ 更改为[
  • 返回的字符串是 JSON 格式。使用 JSON.NET 将其反序列化为数组
  • 看起来你遇到了一个双精度数组,[] 外部数组只是“语法”,内部数组包含值。只需执行 str.Replace('[','{') 和 str.Replace(']','}')

标签: c# arrays data-conversion


【解决方案1】:

该字符串为 Json 格式。使用Json.NET 库对其进行反序列化:

string str = "[[1502942400000,\"4261.48000000\",\"4261.48000000\",\"4261.48000000\",\"4261.48000000\",\"1.77518300\",1502942459999,\"7564.90685084\",3,\"0.07518300\",\"320.39085084\",\"7960.54017996\"],[1502942460000,\"4261.48000000\",\"4261.48000000\",\"4261.48000000\",\"4261.48000000\",\"0.00000000\",1502942519999,\"0.00000000\",0,\"0.00000000\",\"0.00000000\",\"7960.45262989\"]]";
double[][] res = JsonConvert.DeserializeObject<double[][]>(str);

【讨论】:

    【解决方案2】:

    我真的不知道你在问什么,但这段代码会生成 string[] array;,其中包含所有元素。

    string str = "{{1,2,3},{4,5,6},{7,8,9}}";
    str = str.Replace("{", "");
    str = str.Replace("}", "");
    string[] array;
    array = str.Split(',');
    

    【讨论】:

    • OP 正在接收 JSON,所以这样做是个坏主意。
    猜你喜欢
    • 2021-05-24
    • 1970-01-01
    • 1970-01-01
    • 2013-09-17
    • 2014-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多