2010-01-22 13 views
5

Tôi nhận tệp nhị phân, có chứa gấp đôi. Làm thế nào để tôi in ra một thiết bị đầu cuối. Tôi đã thử octaldump 'od' nhưng không thể tìm ra các cú pháp Tôi đã thử một cái gì đó giống nhưlàm cách nào để in một mảng kép nhị phân từ dòng lệnh (unix)

head -c80 |od -f 

Nhưng đó doesnt làm việc, man page của od là vô cùng xấu.

Tôi đã thực hiện một chương trình c thực hiện những gì tôi muốn, điều gì đó giống như giả định 10double khối.

double tmp[10]; 
while(fread(tmp,sizeof(double),10,stdin)) 
    for(int i=0;i<10;i++) printf("%f\t",tmp[i]); 

cảm ơn.

Trả lời

4

Bạn đã thử tiện ích hexdump?

hexdump -e ' [iterations]/[byte_count] "[format string]" ' filename 

đâu chuỗi định dạng nên "%f", đếm byte nên là 8, và lặp đi lặp lại số tiền phao bạn muốn đọc

+0

Cảm ơn điều này khá hữu ích – monkeyking

4

Lệnh od bạn đang muốn tìm

od -t fD 

(Điều đó có nghĩa là "các giá trị dấu phẩy động, có kích thước là double").