我想重写yEnc代码,使其可在Win32上使用Visual Studio 2008进行编译。在
问题是yEnc使用unistd.h(UNIX)函数fcntl检查文件是否可读写。当然,它与msvisualstudio不兼容。在
我想删除的是:
static Bool writable(FILE *file)
{
int mode = fcntl(fileno(file),F_GETFL) & O_ACCMODE;
return (mode == O_WRONLY) || (mode == O_RDWR);
}
static Bool readable(FILE *file)
{
int mode = fcntl(fileno(file),F_GETFL) & O_ACCMODE;
return (mode == O_RDONLY) || (mode == O_RDWR);
}
它的名称如下:
^{pr2}$有人能帮我转换这个可读写的检查(改为try{}catch{})吗?
我相信处理文件读/写错误要比试图知道一个Windows文件是否可读写更容易,因为似乎没有简单的Windows等价于fcntl/F\u GETFL。在
这个解决方案看起来并不复杂,但由于我是C和Python的新手,我不想冒风险制作一个有缺陷的异常处理程序。在
谢谢你的帮助。在
最后,我认为以下检查就足够了:
这就足够了。此外,该文件已首先在Python中打开,我假定该文件已被测试是否有异常。在
你不必转换它只要安装WindowsPOSIX就可以了。 http://www.cygwin.com/
相关问题 更多 >
编程相关推荐