欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python小程序:获取二进制文件的所有内容

程序员文章站 2022-09-14 20:54:04
接上一篇:python小程序:获取文本文件的所有内容 有时候希望获取一个二进制文件的所有内容,但又不希望有打开文件、读文件、关闭文件这些繁琐的步骤,因此需要用一个小程序把这几个...

接上一篇:python小程序:获取文本文件的所有内容

有时候希望获取一个二进制文件的所有内容,但又不希望有打开文件、读文件、关闭文件这些繁琐的步骤,因此需要用一个小程序把这几个步骤封装起来,一句话完成所需要的获取文件内容的操作。为此,这里给出一个示例代码。


代码如下(get_bin_file.py):

#! /usr/bin/env python

import os

def get_bin_file(filename):
	'''
	get the all content of the binary file.
	
	input: filename - the binary file name
	return: binary string - the content of the file. 
	'''

	if not os.path.isfile(filename):
		print("error: %s is not a valid file." % (filename))
		return none

	f = open(filename, "rb")
	data = f.read()
	f.close()

	return data



调用示例:

>>> import get_bin_file
>>> content = get_bin_file.get_bin_file("not_exist_file")
error: not_exist_file is not a valid file.
>>> content = get_bin_file.get_bin_file("./get_bin_file.py")
>>> print (content)
b'#! /usr/bin/env python\n\nimport os\n\ndef get_bin_file(filename):\n\t\'\'\'\n\tget the all content of the binary file.\n\t\n\tinput: filename - the binary file name\n\treturn: binary string - the content of the file. \n\t\'\'\'\n\n\tif not os.path.isfile(filename):\n\t\tprint("error: %s is not a valid file." % (filename))\n\t\treturn none\n\n\tf = open(filename, "rb")\n\tdata = f.read()\n\tf.close()\n\n\treturn data\n\n\n'
>>> content = get_bin_file.get_bin_file("./str_split.py.png")
>>> print(content)
b'\x89png\r\n\x1a\n\x00\x00\x00\rihdr\x00\x00\x01\t\x00×××××××××××××××××××××××××××××××××××××\xb5\xeb\x93\xbc2\x00\x00\x00\x00iend\xaeb`\x82'
>>>