c# 将字符串以二进制形式写入文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# 将字符串以二进制形式写入文件相关的知识,希望对你有一定的参考价值。
我分别用FileStream和BinaryWriter将Encoding类转化过来的Byte数组写入文件,但用记事本打开后看到的还是文本??请教大家
必须写入后用记事本打开是乱码才成功
然后通过BinaryWriter给文件里写
但是二进制写入后不一定乱码
文件在硬盘里边本来就是二进制
只有少数字符在用二进制流写入得时候产生乱麻
别人文件打开是乱码因为那些文件是直接操作得字节数组
不是直接把字符串转换写入的 参考技术A 你这个是,读取一个二进制的文件?
把二进制的文件内容,转成string类型的内容?
using
(filestream
stream
=
file.openread(@"路径"))
byte[]
content
=
new
byte[stream.length];
for
(int
i
=
0;
i
<
content.length;
i++)
content[i]
=
(...
python 写入文件形式
写入文件的不只是文本,还有二进制等,字节流是什么样式关系到能否写入文件。
以获取网页写入文件操作示例:
response = requests.get("http://www.baidu.com") print(response.encoding) print(response.text) # 文本格式 print(response.content) # 字节格式 with open (‘bai.html‘ ,‘w‘,encoding=‘utf-8‘) as f: f.write(response.text) # 如果没有 encoding=‘utf-8‘ ,在Windows默认gbk打开文件,写入就会有问题 # 如果网页的编码比如是 ISO-8859-1 ,那么 encoding=‘ISO-8859-1‘ 也是可以成功写入 with open (‘bai2.html‘ ,‘wb‘) as f: f.write(response.content)
在这里注意有 编码格式,在window下默认是gbk,网页或者Linux下是 unicode编码。
w:以写方式打开,
a:以追加模式打开 (从 EOF 开始, 必要时创建新文件)
r+:以读写模式打开
w+:以读写模式打开 (参见 w )
a+:以读写模式打开 (参见 a )
rb:以二进制读模式打开
wb:以二进制写模式打开 (参见 w )
ab:以二进制追加模式打开 (参见 a )
rb+:以二进制读写模式打开 (参见 r+ )
wb+:以二进制读写模式打开 (参见 w+ )
ab+:以二进制读写模式打开 (参见 a+ )fp.read([size])
以上是关于c# 将字符串以二进制形式写入文件的主要内容,如果未能解决你的问题,请参考以下文章