Python - 从文件中剥离最后一个字节的最简单方法?

标签 python file truncate

我想制作一个脚本,它将获取一个文件,去掉文件的最后一个字节。该文件可以是任何内容,而不仅仅是文本。

我一直在尝试使用 seek() 和 tell() 方法,但我找不到一种方法来处理允许我执行此操作的文件。

我想这应该是相对微不足道的,但也许 Python 不是一个合适的工具?

fileStripped = file[:-4]
newpath = path + "\\" + fileStripped 
if not os.path.exists(newpath): 
 os.makedirs(newpath)
with open(fname, "r") as f:
 f.seek (0, 2)           # Seek @ EOF
 fsize = f.tell()        # Get Size
 f=f.read
 f=f[:fsize-2]

此方法出错,并告诉我无法下标 f=f[:fsize-2]

最佳答案

从末尾寻找一个字节,并截断。

f = open(..., 'r+')
f.seek(-1, os.SEEK_END)
f.truncate()
f.close()

关于Python - 从文件中剥离最后一个字节的最简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10609965/

相关文章:

python - 如何使用 pprint 打印而不换行

C 删除文件中的重复数字

c - strncpy 不能正确存储字符 C

sql - 将整数截断为特定位数?

java - 我不希望 JTable 用省略号截断文本

python - 来自 Python 的 QPX Express API

python - 读取带有开始/结束标签的结构化数据

带有 ± 字符的 Python subprocess.check_output

android - MultipartBody.Part上传文件

java - 如何创建包含多个图像文件的 zip 文件