免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2201 | 回复: 1
打印 上一主题 下一主题

请教几个python处理%windir%这类目录和crc32 的小问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-10-21 20:48 |只看该作者 |倒序浏览
代码如下,
1.为何这个获取文件crc32值的脚本遇到中文命名或中文路径就会打开文件失败呢?
2. 为何将_path=('c:\\windows\\新建文本文档.txt') 修改成  _path=('%windir%\\新建文本文档.txt')
   后,%windir% 不会被转译成c:\windows 呢?

请大家指点下

# _*_ coding: utf-8 _*_
from ctypes import *
import zlib
import os

_path=('c:\\windows\\新建文本文档.txt')  

def getFileCRC(_path):
    try:
        blocksize = 1024 * 64
        f = open(_path,"rb")
        str = f.read(blocksize)
        crc = 0
        while(len(str) != 0):
            crc = zlib.crc32(str, crc)
            str = f.read(blocksize)
        f.close()
    except:
        print "error:get file crc error!"
        return 0
    return c_uint(crc).value

print getFileCRC(_path)
print _path

论坛徽章:
0
2 [报告]
发表于 2009-10-21 21:10 |只看该作者
原帖由 cciikk 于 2009-10-21 20:48 发表
代码如下,
1.为何这个获取文件crc32值的脚本遇到中文命名或中文路径就会打开文件失败呢?
2. 为何将_path=('c:\\windows\\新建文本文档.txt') 修改成  _path=('%windir%\\新建文本文档.txt')
   后,%windir% ...



发现了要获取%windir%就要先..windir = os.environ['WINDIR'] .....


但是这里遇到中文命名文件 为何utf-8就不灵了. 群里高手指点换gbk 就好了....这是个啥原因....
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP