问题列表 - 第31898页

用于与嵌入式设备之间传输数据的最有效格式

我很难选择我的服务器和终端与之通信的格式.
我正在考虑:

  • JSON
  • YAML 太难解析了
  • CSV
  • Google Protobufs
  • 二进制打包/拆包(不使用cast/memset/memcpy来实现可移植性)
  • 某种形式的DSL
  • 您可能有任何其他建议

我的标准从最重要到最不重要的顺序排列:

  1. 哪个是最容易解析的?
  2. 哪个解析最快?
  3. 哪个字节最小?
  4. 哪个有可能拥有最可读的消息?
  5. 哪个有可能更容易加密?
  6. 哪个有可能更容易压缩?

编辑澄清:

  • 数据是双向传输的吗?是.
  • 什么是物理运输?以太网.
  • 数据是否格式化为数据包或流?两者但通常是包.
  • 端点有多少RAM?可能的最小量,取决于我选择的格式.
  • 你的数据有多大?尽可能大.但我不会收到庞大的数据集.
  • 终点是否有RTOS?没有.

embedded parsing communication data-formats

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

如何在PHP单元测试中获得与C#相同的HMAC256结果?

我以为我会尝试将新的签名请求逻辑添加到我的Facebook画布应用程序中,以使我自己"轻松"我在GitHub上访问facebook PHP sdk并查看单元测试.

我的实际问题是我无法获得请求中包含的哈希值,以匹配我使用应用程序机密计算的哈希值以及请求中发送的数据.

Facebook的身份验证页面中描述了这是如何工作.

private string VALID_SIGNED_REQUEST = "ZcZocIFknCpcTLhwsRwwH5nL6oq7OmKWJx41xRTi59E.eyJhbGdvcml0aG0iOiJITUFDLVNIQTI1NiIsImV4cGlyZXMiOiIxMjczMzU5NjAwIiwib2F1dGhfdG9rZW4iOiIyNTQ3NTIwNzMxNTJ8Mi5JX2VURmtjVEtTelg1bm8zakk0cjFRX18uMzYwMC4xMjczMzU5NjAwLTE2Nzc4NDYzODV8dUk3R3dybUJVZWQ4c2VaWjA1SmJkekdGVXBrLiIsInNlc3Npb25fa2V5IjoiMi5JX2VURmtjVEtTelg1bm8zakk0cjFRX18uMzYwMC4xMjczMzU5NjAwLTE2Nzc4NDYzODUiLCJ1c2VyX2lkIjoiMTY3Nzg0NjM4NSJ9";

private string NON_TOSSED_SIGNED_REQUEST = "laEjO-az9kzgFOUldy1G7EyaP6tMQEsbFIDrB1RUamE.eyJhbGdvcml0aG0iOiJITUFDLVNIQTI1NiJ9";

public void SignedRequestExample()
{
 var Encoding = new UTF8Encoding();

 string ApplicationSecret = "904270b68a2cc3d54485323652da4d14"; 

 string SignedRequest = VALID_SIGNED_REQUEST;
 string ExpectedSignature = SignedRequest.Substring(0, SignedRequest.IndexOf('.'));
 string Payload = SignedRequest.Substring(SignedRequest.IndexOf('.') + 1);

 // Back & Forth with Signature
 byte[] ActualSignature = FromUrlBase64String(ExpectedSignature);
 string TestSignature = ToUrlBase64String(ActualSignature);

 // Back & Forth With Data
 byte[] ActualPayload = FromUrlBase64String(Payload);
 string Json = Encoding.GetString(ActualPayload);
 string TestPayload = …
Run Code Online (Sandbox Code Playgroud)

.net c# hash facebook cryptography

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

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

IDLE以奇怪的方式处理数字输入(python 2.6)

如果你只是在>>>提示后输入一个整数,他们会在IDLE解释器中给你,大部分时间它只是简单地将数字反弹给你.

>>> 3
3
>>> 8
8
>>> 10
10
Run Code Online (Sandbox Code Playgroud)

然而,用0开始关闭nubmer,并发生一些有趣的错误.

>>> 010
8
>>> 020
16
Run Code Online (Sandbox Code Playgroud)

python syntax

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

适用于Linq的流利NHibernate或NHibernate?

流利的NHibernate或NHibernate,我们应该更喜欢linq支持哪一个?

c# nhibernate fluent-nhibernate linq-to-nhibernate

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

如何在Mac OSX中使用扩展名.exe运行C#Desktop Application?

我安装了MonoFramework并且我有myproject.exe文件.如何在Mac OSX中运行扩展名为.exe的C#Desktop Application?

c# macos mono

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

删除重复记录

有没有办法可以删除表中存在的重复记录.我只想要一条记录,其余的记录将被查询删除.这可以通过查询来完成.请建议

sql

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

如何找到使用两个指针在链接列表中是否存在任何循环?

可能重复:
如何确定链接列表是否仅使用两个内存位置进行循环.

你好我在接受采访时被问到如何只使用两个指针在链接列表中找到一个循环.

我做了以下事情:

1)每次找到链接列表的中心

2)通过在末尾迭代这两个指针,如果没有指向同一节点并且找到null,那么指针将指向同一节点,那么链接列表中没有循环.

有没有有效的方法来做到这一点......?

提前.

c c++ loops linked-list

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

PHP意外导致浮动到int类型转换

我想在php中将float转换为int值:

var_dump((int)(39.3 * 100.0)); //Returns 3929 but should be 3930!
var_dump((int)(39.2 * 100.0)); //Returns 3920
Run Code Online (Sandbox Code Playgroud)

我可以使用ceil来使它工作,但是有人可以向我解释一下吗?

var_dump((int)ceil(39.3 * 100.0)); //Returns 3930
Run Code Online (Sandbox Code Playgroud)

php floating-point casting type-conversion

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

关于循环速度的问题

我有以下两个循环:

#include <iostream>
#include <stdlib.h>
#include <time.h>

using namespace std;
int main(){

    int start=clock();
    for (int i=0;i<100;i++)
        cout<<i<<" "<<endl;
    cout<<clock()-start<<"\n"<<endl;
    cout<<"\n";

    int start1=clock();
    for (int j=0;j<100;++j)
        cout<<j<<" "<<endl;
    cout<<"\n";
    cout<<clock()-start1<<" \n "<<endl;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我跑了三次.在前两次运行中,第二次循环最快,但在第三次运行时,第一次循环最快.这是什么意思?哪个更好?这取决于具体情况吗?

c++ micro-optimization

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