小编Pat*_*rik的帖子

JSON字符串中的二进制数据.比Base64更好的东西

JSON格式本身不支持二进制数据.必须对二进制数据进行转义,以便可以将其放入JSON中的字符串元素(即使用反斜杠转义的双引号中的零个或多个Unicode字符).

转义二进制数据的一个明显方法是使用Base64.但是,Base64具有很高的处理开销.它还将3个字节扩展为4个字符,从而使数据量增加了大约33%.

一个用例是CDMI云存储API规范的v0.8草案.您可以使用JSON通过REST-Webservice创建数据对象,例如

PUT /MyContainer/BinaryObject HTTP/1.1
Host: cloud.example.com
Accept: application/vnd.org.snia.cdmi.dataobject+json
Content-Type: application/vnd.org.snia.cdmi.dataobject+json
X-CDMI-Specification-Version: 1.0
{
    "mimetype" : "application/octet-stream",
    "metadata" : [ ],
    "value" :   "TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbmx5IGJ5IGhpcyByZWFzb24sIGJ1dCBieSB0aGlz
    IHNpbmd1bGFyIHBhc3Npb24gZnJvbSBvdGhlciBhbmltYWxzLCB3aGljaCBpcyBhIGx1c3Qgb2Yg
    dGhlIG1pbmQsIHRoYXQgYnkgYSBwZXJzZXZlcmFuY2Ugb2YgZGVsaWdodCBpbiB0aGUgY29udGlu
    dWVkIGFuZCBpbmRlZmF0aWdhYmxlIGdlbmVyYXRpb24gb2Yga25vd2xlZGdlLCBleGNlZWRzIHRo
    ZSBzaG9ydCB2ZWhlbWVuY2Ugb2YgYW55IGNhcm5hbCBwbGVhc3VyZS4=",
}
Run Code Online (Sandbox Code Playgroud)

是否有更好的方法和标准方法将二进制数据编码为JSON字符串?

base64 json

581
推荐指数
10
解决办法
45万
查看次数

如何在R中创建矢量矢量

我输入的数据包含这样的行:

-0.438185 -0.766791  0.695282
0.759100  0.034400  0.524807
Run Code Online (Sandbox Code Playgroud)

如何在R中创建如下所示的数据结构:

[[1]]
  [1] -0.438185 -0.766791  0.695282 
[[2]]
  [1]  0.759100  0.034400  0.524807 
Run Code Online (Sandbox Code Playgroud)

r

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

计算CUDA数组中数字的出现次数

我有一个存储在GPU上的无符号整数数组,带有CUDA(通常是1000000元素).我想计算数组中每个数字的出现次数.只有少数不同的数字(约10),但这些数字可以从1到1 1000000.关于9/10这些数字0,我不需要它们的数量.结果看起来像这样:

58458 -> 1000 occurrences
15 -> 412 occurrences
Run Code Online (Sandbox Code Playgroud)

我有一个使用atomicAdds 的实现,但它太慢(许多线程写入相同的地址).有人知道快速/有效的方法吗?

cuda thrust

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

使用ifstream查找大文件

我正在使用ifstream在C++中实现一个必须在大文件中搜索的程序(~1TB).但是,读取2GB后失败.有没有办法获得文件位置,即使对于大文件?我编译为32位Windows机器.

std::ifstream f;
f.open( filename.c_str(), std::ifstream::in | std::ifstream::binary );
while(true) {
    std::cout << (uint64_t)(f.tellg()) << std::endl;
    //read data
}
Run Code Online (Sandbox Code Playgroud)

c++ file-io fstream

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

查找CUDA数组中每个不同值的第一个索引

假设我们有一个这样的数组:

0, 0, 0, 1, 2, 2, 2, 3, 3, 4, ...
Run Code Online (Sandbox Code Playgroud)

我希望每个值的每个第一次出现的索引,所以在这个例子中[0,3,4,7,9].对数组进行排序,所有可能的值都是已知且连续的.

我可能的解决方案是为这个数组中的每个元素使用一个内核,并使用atomicmin来保存最低的索引.但我认为可以采用更好的方法.

cuda thrust

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

如何将现有应用程序直接复制到Xcode中?

我正在使用Swift在Xcode中开发一个应用程序,我必须将现有的应用程序直接复制到Xcode中.

示例场景: 将Snapchat直接复制到xcode中,以便我可以看到代码甚至更改应用程序以使其成为我自己的代码.我需要这个,因为我希望我的应用程序基于另一个应用程序的基本框架.我之前已经看过这与Snapchat完成,但我想知道如何做到这一点.

总的来说,我只想把像Snapchat这样的应用程序变成xcode,其构建与原始应用程序相同,这样如果我在模拟器中运行它,它看起来会一样.

xcode swift

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

标签 统计

cuda ×2

thrust ×2

base64 ×1

c++ ×1

file-io ×1

fstream ×1

json ×1

r ×1

swift ×1

xcode ×1