小编Dmi*_*kov的帖子

将结构转换为Json的最佳方法是什么?

我仍在寻找将我的约会转换为Json的最佳方式.我需要得到这样的结构:

"tags": { "Python": 1, "Java": 3, "Linux": 8 }

我的第一次尝试是使用关联数组: 如何将关联数组转换为key:value?

但后来我明白这不是最好的变种.所以我决定创建一系列结构.

下一个代码只是创建结构的测试数组并用测试数据填充它:

struct MyData
    {
        string name;
        int value;
    }

    MyData [] mydata;
    string mystr = "qwert";

    foreach (i; 1..5)
    {
        MyData md;
        md.name = to!(string)(mystr[i]) ~ to!(string)(mystr[i]); // just to have double letters like: "qq"
        md.value = i;
        mydata ~= md;
    }
Run Code Online (Sandbox Code Playgroud)

因此,在下一步中,我可以迭代结构数组foreach,并使用字符串连接创建适当的json,如:

    string tagsList = `"` ~ data.name ~ `":` ~ to!string(data.value) ~ `,`;
    write(tagsList);
Run Code Online (Sandbox Code Playgroud)

结果将是:

"ww":1,"ee":2,"rr":3,"tt":4,

但它看起来非常脏,我需要在最后剪切逗号符号.

我用Google搜索并发现了几个类似的模块painlessjson允许我将结构序列化为json,但它的工作方式不同.它在结构中取了元素的名称,我得到的结果如下: {"name":"ww","value":1}

那么我应该用什么语言来获得正确的结果?

serialization json d

2
推荐指数
1
解决办法
168
查看次数

传单:通过 id 删除图层不起作用

我正在尝试从地图中删除元素:工作代码:

var x = L.imageOverlay(fullURL, xbounds).addTo(Window.map);
Window.map.removeLayer(x);
Run Code Online (Sandbox Code Playgroud)

不工作:

var x = L.imageOverlay(fullURL, xbounds).addTo(Window.map);
Window.map.removeLayer(1);
Run Code Online (Sandbox Code Playgroud)

根据文档,它有通过 ID 删除元素的方法

leaflet

2
推荐指数
1
解决办法
3031
查看次数

"String"类型的值不能分配给"Hero"类型的变量

我正在学习飞镖.当我写下一个代码时:

class Hero 
{
    String name;

    Hero(this.name);
}

class AppComponent
{
    String title = 'header';
    Hero hero = 'Windstorm';
}


Hero hero = new Hero('test');
Run Code Online (Sandbox Code Playgroud)

我收到了错误: A value of type 'String' cannot be assigned to a variable of type 'Hero'.

我做错了什么?

dart angular-dart

2
推荐指数
1
解决办法
1752
查看次数

什么是终端符号和非终端符号?

我正在阅读Rebol Wikipedia页面

“解析表达式是用解析方言编写的,与do方言一样,它是数据交换方言的面向表达式的子语言。与do方言不同,解析方言使用表示运算符和最重要的非终结符的关键字”

你能解释一下什么是terminalsnonterminals?我已经阅读了很多有关语法的内容,但不了解它们的含义。这是另一个经常使用此词的链接

grammar rebol context-free-grammar red

2
推荐指数
2
解决办法
238
查看次数

孩子有非零的 flex 但传入的高度约束是无界的

return Card(
  child: Row(
    children: <Widget>[
      Placeholder(
        fallbackHeight: 100,
        fallbackWidth: 100,
      ),
      Column(
        mainAxisSize: MainAxisSize.min,
        children: <Widget>[
          Container(height: 10,  child: Container(child: Text("One"),)),
          Expanded(child: Container(child:  Text("Center") )),

        ],
      )
    ],
  ),
);
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,我收到错误:

I/flutter (4872):在 performLayout() 期间抛出以下断言:I/flutter (4872):RenderFlex 子项具有非零 flex 但传入的高度约束是无界的。I/flutter (4872):当一列位于不提供有限高度约束的父列中时,例如,如果它是 I/flutter (4872):在垂直滚动中,它将尝试收缩其子项纵轴。设置 I/flutter ( 4872): flex on a child (例如使用 Expanded) 表示子项要扩展以填充剩余的 I/flutter ( 4872): 垂直方向的空间。

全码:

class FilmItems extends StatelessWidget {
  List<String> filmListList;

  List<String> _getFilmList() {
    var items = List<String>.generate(101, (counter) => "item $counter");
    return items;
  }

  FilmItems() …
Run Code Online (Sandbox Code Playgroud)

flutter

2
推荐指数
1
解决办法
8020
查看次数

如何检查列表中是否存在子列表?

如何检查一个列表是否包含另一个列表?.contains仅允许单个值。

import 'dart:io';
void main() {
  List<int> mylist_1 = [1,3,5,2,7,8];
  List<int> mylist_2 = [1,3,2];
}
Run Code Online (Sandbox Code Playgroud)

我需要检查是否mylist_1mylist_2。列表中元素的任意顺序。

dart

2
推荐指数
1
解决办法
1514
查看次数

如何在D中与数组相交?

我需要找到D.串的两个阵列之间差异的问题,我无法理解如何使用SetDifferencestd.algorithm.

    auto x = SetDifference(filearr1,filearr2);
Run Code Online (Sandbox Code Playgroud)

得到错误:

Error: struct std.algorithm.SetDifference cannot deduce function from argument types !()(string[], string[]), candidates are:

arrays d

1
推荐指数
1
解决办法
69
查看次数

D:如何在媒体/分区上获得可用磁盘空间?

我需要在分区上获得总的和可用的大小.我怎么能用D得到它?我应该使用哪些功能?

size d partition

1
推荐指数
1
解决办法
168
查看次数

如何将int添加到int数组中?

我需要添加单个int数组的ints.我怎么能用D做呢?

void main()
{
    int v = 2;
    int [] x ~= v; // do not work
}
Run Code Online (Sandbox Code Playgroud)

工作代码:

int v = 2;
int [] x; 
x ~= v;
Run Code Online (Sandbox Code Playgroud)

arrays int d append

1
推荐指数
1
解决办法
63
查看次数

我可以使用没有构造函数的类吗?

我正在学习 Dart。我在文档中没有找到我的问题的任何答案。我可以在没有构造函数的情况下创建和使用类吗?或者稍后我可能会遇到一些问题?

class MyClass {
  String name;
  int age;
}
Run Code Online (Sandbox Code Playgroud)

dart

1
推荐指数
1
解决办法
1537
查看次数