小编kth*_*ore的帖子

Go lang解码io.read JSON vs unmarshal给出不同的结果

我有这样的处理程序:

type Location struct {
  Lat  float32 `json:"lat"`
  Lon  float32 `json:"lon"`
}



func handleJSONLocation(res http.ResponseWriter, req *http.Request) {    
    b := new(Location)
    var bb Location;
    buf := new(bytes.Buffer)
    buf.ReadFrom(req.Body)

    json.Unmarshal(buf.Bytes(), &bb)
    json.NewDecoder(req.Body).Decode(b)

    log.Printf("%s %f,%f %f,%f", buf.String(), b.Lat, b.Lon, bb.Lat, bb.Lon);

    data, _ := json.Marshal("{'location':'saved'}")
    res.Header().Set("Content-Type", "application/json; charset=utf-8")
    res.Write(data)
}
Run Code Online (Sandbox Code Playgroud)

我明白了

2014/04/25 22:05:55 {"lat":42.9635013,"lon":-81.22387210000001} 0.000000,0.000000 42.963501,-81.223869
Run Code Online (Sandbox Code Playgroud)

为什么不将b对象解码成?

问候

json go

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

如何提高Mono中winforms应用程序的性能?

我有一个远程应用程序(2个玩家Magic the Gathering Game)在C#中使用Windows窗体,我看到单声道的性能非常差.我能想到的一件可能影响性能的是我有按钮背景和表单背景(.png)的自定义图像.此外,我大量使用卡片图像(.jpg).最后我非常严格地坚持.NET 2.0.

我可以找到什么来改善单声道的窗体性能?如果这是不可能的,有一个快速winforms到gtk#转换器或工具,有助于转换?

c# mono performance gtk# winforms

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

如何在C#中通过网络提供单例对象?

我正在用C#为学校项目创建一个纸牌游戏.这个纸牌游戏是联网的.纸牌游戏的游戏数据作为gameData存储在单个对象中.gameData保持,玩家姓名,游戏等待的玩家,玩家对象.每个玩家有3个List对象.卡片再次是自定义对象.最初我打算为每个card,player和gameData对象创建一个ToByte()方法,并将它们序列化以使用TCPlistener通过网络发送.然而,我正在寻找其他方式.

这些是我听说过的解决方案:

-SOAP(不知道如何实现这个)

-Database(对于LAN来说似乎有点过分,除非可以使小型数据库服务器在运行中运行)

-Client Activated Object(但这会为每个客户端创建不同的单例)

我想做的是让每个客户端使用他们自己的gameData但使用get,设置它将与托管这个singleton对象数据的服务器通信.您有什么推荐的吗?

c# singleton

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

Perl循环卡住阅读文件?

结束这个问题.会喝红牛.睡觉.代码和带有单元测试案例的品牌打击新问题.

更新:新文件在这里

配置文件也在这里

我再次重构了代码:

sub getColumns {
    open my $input, '<', $ETLSplitter::configFile
        or die "Error opening '$ETLSpliter::configFile': $!";

    my $cols;
    while( my $conline = <$input> ) {
        chomp $conline;
        my @values = split (/=>/, $conline);
        if ($ETLSplitter::name =~ $values[0] ) {
            $cols = $values[1];
            last;
        }
    }

    if($cols) {
        @ETLSplitter::columns = split (':', $cols);
    }
    else {
        die("$ETLSplitter::name is not specified in the config file");
    }
}
Run Code Online (Sandbox Code Playgroud)

这段代码总是死在这里die("$ETLSplitter::name is not specified in the config file");.

另一个线索是,如果我 …

perl split readline while-loop

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

标签 统计

c# ×2

go ×1

gtk# ×1

json ×1

mono ×1

performance ×1

perl ×1

readline ×1

singleton ×1

split ×1

while-loop ×1

winforms ×1