标签: binary-data

如果修复了文件大小,如何让SVN实现二进制文件的更改

我正在使用一个程序将数据写入固定大小的二进制文件,我存储在一个subversion存档中.

然而,问题是SVN(命令行客户端和TortiseSVN)认为由于文件大小没有改变,文件本身没有改变,也不应该提交.

有没有办法改变使用的diffing方法,还是我不得不求助于诸如向文件添加虚拟属性之类的黑客?


编辑:原来解决方案不是因为文件大小的事情.我只是自动认为会是这种情况,因为大多数nieve diffing altorithims都会这样做. [黄鼠狼的话]

svn tortoisesvn binary-data

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

将二进制图像数据从Web服务读入UIImage

我正在iPhone应用程序中使用Web服务.Web服务方法返回一个响应,该响应具有多个字段(例如ID,描述等).其中一个字段包含我需要在我的iPhone应用程序中转换为UIImage的二进制图像数据.

我正在成功使用NSXMLParser从XML响应中提取数据.在parser:foundCharacters:XMLParser 的选择器中,它NSString*指向每个字段中的字符串.由于这是一个字符串,这是我在遇到图像字段时读取图像数据的方法:

UIImage *img = [[UIImage alloc] initWithData:[string dataUsingEncoding:NSUTF8StringEncoding]];
Run Code Online (Sandbox Code Playgroud)

但是img变量在这一行之后仍然是"零".似乎XML字符串中的数据与转换不兼容.我在这做错了什么?(我能够将其他字段读入我的变量但不能读取此图像数据字段)

提前致谢..

iphone web-services binary-data

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

在java中将图像转换为二进制数据(0和1)

我想从URL读取图像并将其转换为二进制数据.请帮我..

        byte[] data = null;
        ByteArrayOutputStream bas = null;
        try {
            URL u = new URL(
                    "http://www.eso.org/public/archives/images/screen/eso0844a.jpg");
            HttpURLConnection con1 = (HttpURLConnection) u.openConnection();
            con1.setAllowUserInteraction(true);
            con1.setRequestMethod("GET");
            con1.connect();
            InputStream is = con1.getInputStream();
            BufferedImage imgToServe = null;
            if (is != null) {
                imgToServe = ImageIO.read(is);
            }
            bas = new ByteArrayOutputStream();
            ImageIO.write(imgToServe, "jpg", bas);

            File f = new File("C:\\img.jpg");
            ImageIO.write(imgToServe, "jpg", f);

            data = bas.toByteArray();
            String str = "";
            for (int i = 0; i < data.length; i++) {
                str = str + toBinary(data[i]);
            } …
Run Code Online (Sandbox Code Playgroud)

java image binary-data

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

Postgres bytea列返回字符串(char数组)而不是字节数组

我一直在使用C#为不同数据库的产品编写具体的提供程序实现.W/out进入细节,其中一列是字节数组类型(postgres中的bytea - 由于首选项bytea是在blob上选择的).唯一的问题是,它不会返回插入的相同值.当我插入Int32("0")时,我得到8 [92和8x 48](而不是[0,0,0,0]).我需要一个性能明智的解决方案,它将返回我插入的纯字节,而不是8个字节上的值"0"的ASCII表示.

我正在使用Npgsql来检索数据.如果有人知道c#的解决方案,我也很乐意学习它.

编辑: Postgres 9.0,.Net 3.5

简单化

命令查询: - 内部只执行插入语句

select InsertOrUpdateEntry(:nodeId, :timeStamp, :data)
Run Code Online (Sandbox Code Playgroud)

数据参数:

byte [] value = BitConverter.GetBytes((int)someValue);
Run Code Online (Sandbox Code Playgroud)

参数分配如下

command.Parameters.Add(new NpgsqlParameter("data", NpgsqlDbType.Bytea) 
{ Value = value });
Run Code Online (Sandbox Code Playgroud)

选择陈述:

select * from Entries
Run Code Online (Sandbox Code Playgroud)

我输入的字节数组相同,我想回去.我将衷心感谢您的帮助.

输入:0 0 0 0
电流输出:92 48 48 48 48 48 48 48 48
预期输出:0 0 0 0

c# postgresql bytearray binary-data npgsql

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

Linux X86-64程序集和printf

我正在阅读一些linux汇编手册,并找到了使用printf()函数的想法.我需要它以二进制形式将调试原因的寄存器值输出到终端,但现在我只是尝试用文本测试该函数.

我被困了,因为当我使用pushq而不是pushl时出现段错误.如何更改此程序以输出字符串和二进制形式的寄存器?

.data
input_prompt:
    .string "Hello, world!"

printf_format:
    .string "%5d "

printf_newline:
    .string "\n"

size:
    .long 0

.text
.globl main
main:
    pushq $input_prompt
    call  printf

    movl  $0, %eax
    ret
Run Code Online (Sandbox Code Playgroud)

它由GCC编制为:

gcc tmp.S -o tmp
Run Code Online (Sandbox Code Playgroud)

linux assembly x86-64 binary-data

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

如何使用drakma下载和保存文件:http-request和flexistreams

我正在尝试下载并保存PDF,但在使用EOF-Error写入时失败.这样做的正确方法是什么?

(with-open-file (file "/home/*/test.pdf"
                      :direction :io
                      :if-does-not-exist :create
                      :if-exists :supersede
                      :element-type '(unsigned-byte 8))
  (let ((input (drakma:http-request "http://www.fractalconcept.com/ex.pdf"
                                    :want-stream t)))
    (awhile (read-byte input)
      (write-byte it file))
    (close input)))
Run Code Online (Sandbox Code Playgroud)

common-lisp binary-data

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

pack()和unpack()如何在Ruby中工作

在Ruby中为什么我们需要数组Packing?如何directive帮助做这样的包装?

我在我的控制台中运行了一些代码,以查看Array包装中的指令是什么以及如何.但输出与每个指令完全相同.然后在核心他们如何不同?

irb(main):003:0> n = [ 65, 66, 67 ]
=> [65, 66, 67]
irb(main):004:0> n.pack("ccc")
=> "ABC"
irb(main):005:0> n.pack("C")
=> "A"
irb(main):006:0> n.pack("CCC")
=> "ABC"
irb(main):007:0> n.pack("qqq")
=> "A\x00\x00\x00\x00\x00\x00\x00B\x00\x00\x00\x00\x00\x00\x00C\x00\x00\x00\x00\
x00\x00\x00"
irb(main):008:0> n.pack("QQQ")
=> "A\x00\x00\x00\x00\x00\x00\x00B\x00\x00\x00\x00\x00\x00\x00C\x00\x00\x00\x00\
x00\x00\x00"
irb(main):009:0> n.pack("SSS")
=> "A\x00B\x00C\x00"
irb(main):010:0> n.pack("sss")
=> "A\x00B\x00C\x00"
irb(main):011:0>
Run Code Online (Sandbox Code Playgroud)

现在我可以从控制台看到它n.pack("SSS") and n.pack("sss");n.pack("ccc") and n.pack("CCC"); n.pack("qqq") and n.pack("QQQ")提供相同的输出.然后差异在哪里?

文档也没有涵盖每个指令在现实生活中如何工作的一些例子.我也对下面的指令感到困惑,因为我不知道如何测试它们?任何带有它们的小代码对我都有帮助:

  • S_, S!
  • S> L> Q>
  • S!< I!<
  • L_, L!

ruby unpack binary-data pack ruby-1.9.3

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

在Python 3中从CGI输出二进制数据

这个问题关系到这一个.从Python 2中的CGI脚本打印原始二进制数据时,我没有遇到任何问题,例如:

#!/usr/bin/env python2

import os

if __name__ == '__main__':
    with open(os.path.abspath('test.png'), 'rb') as f:
        print "Content-Type: image/png\n"
        print f.read()
Run Code Online (Sandbox Code Playgroud)

以下是相关的响应标头:

> GET /cgi-bin/plot_string2.py HTTP/1.1
> User-Agent: curl/7.32.0
> Host: 0.0.0.0:8888
> Accept: */*
> 
* HTTP 1.0, assume close after body
< HTTP/1.0 200 Script output follows
< Server: SimpleHTTP/0.6 Python/3.3.2
< Date: Fri, 13 Sep 2013 16:21:25 GMT
< Content-Type: image/png
Run Code Online (Sandbox Code Playgroud)

并且结果被解释为图像,如预期的那样.但是,如果我尝试翻译Python 3:

#!/usr/bin/env python

import os
import sys

if __name__ == '__main__':
    with open(os.path.abspath('test.png'), 'rb') …
Run Code Online (Sandbox Code Playgroud)

python cgi binary-data python-3.x

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

MySQL中的“ VARCHAR BINARY”和“ VARBINARY”有什么区别?

我创建了以下测试表:

CREATE TABLE t (
   a VARCHAR(32) BINARY,
   b VARBINARY(32)
);

INSERT INTO t (a, b) VALUES ( 'test    ', 'test    ');
INSERT INTO t (a, b) VALUES ( 'test    \0', 'test    \0');
Run Code Online (Sandbox Code Playgroud)

但是此查询表明两种类型之间没有区别:

SELECT a, LENGTH(a), HEX(a), b, LENGTH(b), HEX(b) FROM t;

a          LENGTH(a)  HEX(a)              b          LENGTH(b)  HEX(b)              
---------  ---------  ------------------  ---------  ---------  --------------------
test               8  7465737420202020    test               8  7465737420202020    
test               9  746573742020202000  test               9  746573742020202000  
Run Code Online (Sandbox Code Playgroud)

mysql collation binary-data

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

如何告诉scikit-learn给出F-1 /精度/召回分数的标签(二进制分类)?

本文所述,对于计算F-1分数(即计算召回率和精确度)而言,无论这些计算是基于阳性还是阴性,都是很重要的。例如,如果我有一个偏斜的数据集,其中标签类别A的标签为1%,类别B标签的标签为99%,而我只是将A分配为阳性类别,并将所有测试项目归为阳性,那么我的F-1分数将非常好。如何告诉scikit-learn二进制分类中哪个类别是肯定类别?(如果有帮助,我可以提供代码。)

python classification machine-learning binary-data scikit-learn

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