写入Julia中的二进制文件

时间:2017-01-17 09:48:22

标签: julia

我需要在Julia中将一些数据记录到二进制文件中。在C上我使用下一个代码:

#include <stdio.h>
#include <stdlib.h>

int main()
{
FILE* out = fopen( "test2.bin", "wb" );
if( out==NULL )
    return 1;

putc(49,out);
fclose(out);
} 

并得到了预期的结果(我在十六进制编辑器中看作是char):

1

将代码重写为Julia之后,我得到了以下代码:

out =  open("test.bin","w")
write(out,49)
close(out) 

但结果是:

1.......

从文档我知道函数write返回字节数(在我的例子中它是8但应该是1)。

所以我的问题: 1.我做错了什么? 2.如何正确写入Julia中的二进制文件?

1 个答案:

答案 0 :(得分:3)

你正确的方式。原因是8它是Int的大小,所以如果想写为Char,你需要使用显式类型转换Int to Char:

write(out,Char(49))