我编写了一个简单的python脚本,用于从“.h”或“.c”文件中删除较旧的修订历史记录。
这是代码:
import mmap
f = open("D:\MyFile.h", "r+");
m = mmap.mmap(f.fileno(), 0);
index = m.find("/*+- Revision History");
if (index):
print index;
f.seek(index);
f.truncate();
f.close();
它出现以下错误:
Traceback (most recent call last):
File "C:/Python27/Omni", line 15, in <module>
f.truncate();
IOError: [Errno 13] Permission denied
答案 0 :(得分:1)
请更改模式以打开这样的文件
f = open("D:/MyFile.h", "r+");
f.truncate()
f.close()
因为您没有对该文件的写入权限,所以它收到了该错误。希望这能解决问题。
希望你使用的是windows系统。然后按照上面的步骤操作。它对我有用。我的python版本是2.6。
既然你想做截断,从文件中删除所有数据,它需要写权限,所以我使用了r+
。
答案 1 :(得分:0)
我在ubuntu上成功运行了相同的程序,它运行得很好。我想与Windows权限有关。