C#如何将txt与.bin文件互转

雪饼哥哥 2020-07-13 10:38:35
C#如何将txt与.bin文件互转
...全文
2642 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuwentao4761901 2020-08-05
  • 打赏
  • 举报
回复
bin文件有很多种,一般是指二进制的文件,但是也有特殊用的,比如嵌入式设备,以及硬件固件的ROM等都是bin格式的,不能保证都能转换成功的
雪饼哥哥 2020-08-04
  • 打赏
  • 举报
回复
引用 10 楼 by_封爱 的回复:
文件的后缀,只影响了他在window下的打开方式.. 比如一个xxx.bin 里面可能是文本也说不定 但是你既然给出了例子. 我想 你的例子 也无非就是

var str=string.join(" ",io.file.readallbytes("1.bin").select(d=>d.tostring("x2")));
对吧? 那么同理. 你完全可以把这字符串直接写到txt里... 你又会说 那这是文本啊....不是bin 那你直接

io.file.writeallbytes("1.bin",data);
其中data就是你readallbytes里的数据 不过似乎没什么意义..所以你的原始需求 到底是什么呢?
第一个bin文件 44 49 4E 46 01 00 00 00 30 4B 30 34 30 32 31 30 30 30 32 30 32 30 30 36 30 31 30 30 30 30 30 30 30 32 00 00 00 00 00 00 00 4B 00 00 00 00 00 00 53 50 41 00 00 00 00 00 00 00 00 00 00 00 00 00 73 70 61 00 00 00 00 00 00 00 00 00 00 00 00 00 第二个bin文件 44 49 4E 46 01 20 20 20 30 4B 30 34 30 32 31 30 30 30 32 30 32 30 30 36 30 31 30 30 30 30 30 30 30 32 20 20 20 20 20 20 20 4B 20 20 20 20 20 20 53 50 41 20 20 20 20 20 20 20 20 20 20 20 20 20 73 70 61 20 20 20 20 20 20 20 20 20 20 20 20 20 请问各位大神,为什么第一个bin文件打开之后,点击保存,空格的字节都会变成20?其他的都不变
雪饼哥哥 2020-08-04
  • 打赏
  • 举报
回复
引用 14 楼 我不懂电脑 的回复:
最简单的,改下文件名后缀就可以了
第一个bin文件 44 49 4E 46 01 00 00 00 30 4B 30 34 30 32 31 30 30 30 32 30 32 30 30 36 30 31 30 30 30 30 30 30 30 32 00 00 00 00 00 00 00 4B 00 00 00 00 00 00 53 50 41 00 00 00 00 00 00 00 00 00 00 00 00 00 73 70 61 00 00 00 00 00 00 00 00 00 00 00 00 00 第二个bin文件 44 49 4E 46 01 20 20 20 30 4B 30 34 30 32 31 30 30 30 32 30 32 30 30 36 30 31 30 30 30 30 30 30 30 32 20 20 20 20 20 20 20 4B 20 20 20 20 20 20 53 50 41 20 20 20 20 20 20 20 20 20 20 20 20 20 73 70 61 20 20 20 20 20 20 20 20 20 20 20 20 20 请问各位大神,为什么第一个bin文件打开之后,点击保存,空格的字节都会变成20?其他的都不变
雪饼哥哥 2020-08-04
  • 打赏
  • 举报
回复
第一个bin文件 44 49 4E 46 01 00 00 00 30 4B 30 34 30 32 31 30 30 30 32 30 32 30 30 36 30 31 30 30 30 30 30 30 30 32 00 00 00 00 00 00 00 4B 00 00 00 00 00 00 53 50 41 00 00 00 00 00 00 00 00 00 00 00 00 00 73 70 61 00 00 00 00 00 00 00 00 00 00 00 00 00 第二个bin文件 44 49 4E 46 01 20 20 20 30 4B 30 34 30 32 31 30 30 30 32 30 32 30 30 36 30 31 30 30 30 30 30 30 30 32 20 20 20 20 20 20 20 4B 20 20 20 20 20 20 53 50 41 20 20 20 20 20 20 20 20 20 20 20 20 20 73 70 61 20 20 20 20 20 20 20 20 20 20 20 20 20 请问大神,为什么第一个bin文件打开之后,点击保存,空格的字节都会变成20?其他的都不变
我不懂电脑 2020-08-04
  • 打赏
  • 举报
回复
最简单的,改下文件名后缀就可以了
雪饼哥哥 2020-08-04
  • 打赏
  • 举报
回复
雪饼哥哥 2020-08-04
  • 打赏
  • 举报
回复
第一个bin文件 44 49 4E 46 01 00 00 00 30 4B 30 34 30 32 31 30 30 30 32 30 32 30 30 36 30 31 30 30 30 30 30 30 30 32 00 00 00 00 00 00 00 4B 00 00 00 00 00 00 53 50 41 00 00 00 00 00 00 00 00 00 00 00 00 00 73 70 61 00 00 00 00 00 00 00 00 00 00 00 00 00 第二个bin文件 44 49 4E 46 01 20 20 20 30 4B 30 34 30 32 31 30 30 30 32 30 32 30 30 36 30 31 30 30 30 30 30 30 30 32 20 20 20 20 20 20 20 4B 20 20 20 20 20 20 53 50 41 20 20 20 20 20 20 20 20 20 20 20 20 20 73 70 61 20 20 20 20 20 20 20 20 20 20 20 20 20 请问各位大神,为什么第一个bin文件打开之后,点击保存,空格的字节都会变成20?其他的都不变
IT_study001 2020-07-14
  • 打赏
  • 举报
回复
这操作学习一下~~~
by_封爱 版主 2020-07-14
  • 打赏
  • 举报
回复
文件的后缀,只影响了他在window下的打开方式.. 比如一个xxx.bin 里面可能是文本也说不定 但是你既然给出了例子. 我想 你的例子 也无非就是

var str=string.join(" ",io.file.readallbytes("1.bin").select(d=>d.tostring("x2")));
对吧? 那么同理. 你完全可以把这字符串直接写到txt里... 你又会说 那这是文本啊....不是bin 那你直接

io.file.writeallbytes("1.bin",data);
其中data就是你readallbytes里的数据 不过似乎没什么意义..所以你的原始需求 到底是什么呢?
Dear200892 2020-07-13
  • 打赏
  • 举报
回复
https://www.cnblogs.com/chenxizhang/archive/2008/08/04/1260440.html
雪饼哥哥 2020-07-13
  • 打赏
  • 举报
回复
bin转文本实现了,但是文本转bin还不知道哦。
引用 1 楼 tangyanzhi1111 的回复:
.bin 是啥?
引用 2 楼 Dear200892 的回复:
二进制转文本?
Dear200892 2020-07-13
  • 打赏
  • 举报
回复
二进制转文本?
wyt810927 2020-07-13
  • 打赏
  • 举报
回复
使用十六进制转文本
江湖评谈 2020-07-13
  • 打赏
  • 举报
回复
.bin 是啥?
张泓锐 2020-07-13
  • 打赏
  • 举报
回复
这个能否整得完整一些
threenewbee 2020-07-13
  • 打赏
  • 举报
回复
bin要看具体是什么格式的,很多文件都使用这个后缀。最好给个例子

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧