服务器是Windows的,现在的需求是通过一个CGI脚本输出一个pdf(或者是一个图片)。发现出来的文件的大小变大了,然后内容显示不出来或者乱码,估计是\r\n导致的问题。折腾了一下午,找到了答案。现在的代码如下:
filename = r'D:\example.pdf' #我这里要输出pdf print 'Content-type: application/pdf\n\n' import msvcrt msvcrt.setmode(1, os.O_BINARY) #使stdout为二进制 pdf_file = open(filename, 'rb') data = pdf_file.read() pdf_file.close() print data