将大量二进制数据文件转成文本文件 python
时间: 2023-09-06 22:07:46 浏览: 248
将二进制数据文件转换为文本文件可以使用Python的标准库`binascii`。下面是一个简单的示例程序,将二进制文件转换为文本文件:
```python
import binascii
# 二进制文件路径
bin_file = "data.bin"
# 文本文件路径
txt_file = "data.txt"
# 以二进制模式打开输入文件
with open(bin_file, "rb") as f_in:
# 读取二进制数据
data = f_in.read()
# 将二进制数据转换为十六进制字符串
hex_str = binascii.hexlify(data)
# 将十六进制字符串写入文本文件
with open(txt_file, "w") as f_out:
f_out.write(hex_str.decode("utf-8"))
```
这个程序将读取名为`data.bin`的二进制文件,并将其转换为十六进制字符串,然后将字符串写入名为`data.txt`的文本文件中。请注意,由于转换后的字符串可能包含非ASCII字符,因此在写入文本文件之前需要使用`decode()`方法将其转换为UTF-8编码的字符串。
相关问题
将大量dat二进制数据文件转成文本文件 python
将dat二进制数据文件转换为文本文件可以使用Python的标准库`numpy`。下面是一个简单的示例程序,将dat二进制文件转换为文本文件:
```python
import numpy as np
# dat二进制文件路径
dat_file = "data.dat"
# 文本文件路径
txt_file = "data.txt"
# 读取dat二进制文件
data = np.fromfile(dat_file, dtype=np.float32)
# 将数据写入文本文件
with open(txt_file, "w") as f_out:
for d in data:
f_out.write(str(d) + "\n")
```
这个程序将读取名为`data.dat`的dat二进制文件,并将其转换为浮点数数组。然后,将数组中的每个浮点数写入名为`data.txt`的文本文件中。请注意,写入文本文件时需要将浮点数转换为字符串,并添加换行符以分隔每个数。
阅读全文