matlab 打开bin文件 并转换成为txt文件,送上所有积分 MATLAB如何将图片格式转换成为16进制的bin文件,以便...

MATLAB\u4e2d\u8bfb\u53d6TXT\u5185\u5bb9\u5e76\u8f6c\u6210\u4e8c\u8fdb\u5236

\u8fd9\u4e2a\u8c8c\u4f3c\u5f88\u7b80\u5355\uff0c\u6bd4\u5982\u4f60\u5728\u4f60\u7684\u5f53\u524d\u76ee\u5f55\u4e0b\u5efa\u7acbmyfile.txt\u6587\u672c\u6587\u4ef6\uff0c\u5176\u4e2d\u7684\u5185\u5bb9\u53731234\u767e\u5ea6baidu\u3002\u7136\u540e\u547d\u4ee4\u7a97\u53e3\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\u5c31\u53ef\u4ee5\u4e86\u3002
A=textread('\u4f60\u7684\u5168\u8def\u5f84\myfile.txt','%s')
%\u8bfb\u53d6\u6587\u4ef6\u540e\u4fdd\u5b58\u5230A\u5355\u5143\u6570\u7ec4\u4e2d
B=dec2bin(abs(A{1}))
%\u5c06\u5176\u8f6c\u6362\u4e3a\u4e8c\u8fdb\u5236\u5b57\u7b26\u4e32
B =

000000000110001
000000000110010
000000000110011
000000000110100
111011001111110
101111010100110
000000001100010
000000001100001
000000001101001
000000001100100
000000001110101
%\u517111\u884c\u5bf9\u5e941234\u767e\u5ea6baidu
\u5e0c\u671b\u89e3\u51b3\u4f60\u7684\u95ee\u9898\uff01

matlab\u4e2d\u5c06\u5341\u516d\u8fdb\u5236\u8f6c\u6362\u4e3a\u5341\u8fdb\u5236\u65b9\u6cd5
a=textread('c:\a.txt','%s')';%\u4ee5\u5b57\u7b26\u5f62\u5f0f\u6253\u5f00\u6587\u4ef6
alpha=hex2dec(a)'; %16\u8fdb\u5236\u8f6c\u5316\u4e3a10\u8fdb\u5236\u6570\uff0c\u5b58\u5165alpha\u77e9\u9635
%%%%%%%16\u8fdb\u5236\u8f6c10\u8fdb\u5236 \u8f6c\u5316\u65b9\u6cd5\u4e8c%%%%%%%%%%%
[wenjian_ming,lujing_ming] = uigetfile('c:\a.txt','\u5bfc\u5165\u6570\u636e');
fid=fopen(strcat(lujing_ming,wenjian_ming),'r');
data=[];
while ~feof(fid)
m=fscanf(fid,'%3x',[1 inf]);
data=[data;m]; %\u5c06\u8bfb\u51fa\u7684\u6570\u636e\u5b58\u5165data\u77e9\u9635\u4e2d
end
alpha=data;
%%%%%%%\u4fdd\u5b58\u6587\u4ef6\u65b9\u6cd5\u4e00%%%%%%%%%%%%%%
dlmwrite('c:\b.txt',alpha,'delimiter', ' ') %\u5c06\u5f97\u51fa\u6570\u636e\u5b58\u5165\u65b0\u7684b.txt\u6587\u6863
%%%%%%%\u4fdd\u5b58\u6587\u4ef6\u65b9\u6cd5\u4e8c%%%%%%%%%%%%%%
fid=fopen('c:\d.txt','w');
fprintf(fid,'%d ',alpha');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
alpha2=alpha(1:2:length(alpha)-mod(length(alpha)+1,2)); %\u5c06\u5947\u6570\u5143\u7d20\u63d0\u53d6\u51fa\u6765
dlmwrite('c:\c.txt',alpha2,'delimiter', ' ') %\u5c06\u5f97\u51fa\u6570\u636e\u5b58\u5165\u65b0\u7684c.txt\u6587\u6863
%%%%%%%\u753b\u56fe%%%%%%%%%%%%%%
plot(1:length(alpha2),alpha2) %\u753b\u56fe

读取二进制文件用fread函数,其调用格式为
[A,COUNT]=fread(fid,size,'precision')

其中A是用于存放读取数据的矩阵、COUNT是返回所读取的数据元素个数、fid为文件句柄、size为可选项,若不选用则读取整个文件内容;precision用于控制所写数据的精度,

%从数据文件读取一维数据
fip=fopen('C:\binary3.bin','rb');
[dat,num]=fread(fip,[2,20],'double');
fclose(fip); %关闭文件

写数据至TXT文件用fprintf函数,其调用格式为
fprintf(fid,format,A)
fid为文件句柄,指定要写入数据的文件,format是用来控制所写数据格式的格式符,与fscanf函数相同,A是用来存放数据的矩阵或变量。

fp=fopen('c:\dat.txt','w');
fprintf(fp,'%s',dat)
fclose(fp)

以上代码只是简单演示具体还需要知道你的二进制文件的数据格式和数据种类以及以何种形式写入文本文件(比如间隔为逗号?制表符?空格?等等)

fopen
fwrite
fclose

QQ叫我447139578 ,慢慢和你说。

你想要用手机来看TXT文件是吧,如果是的话,我有办法让这成为现实,你只要拥有TXT文件夹,把BIN的文件内容复制到TXT,手机就能识别并看到你要看的内容了,没有这个文件夹的话就从朋友有的那里复试过来,没有问题的,有问题再来找我

扩展阅读:安卓打开bin文件 ... 官方bin文件阅读器下载 ... 打开bin视频的app手机 ... bin视频文件播放的播放器 ... bin文件查看器app ... bin用什么软件打开 ... oppo手机打开bin文件app ... 手机bin文件转换mp3 ... 最简单的bin文件打开方法 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网