Y yinxianglong Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-12 #1 我如何用 Delphi 把2进制文件用文本方式存储,并能转换回2进制文件 1.不能简单的将文件用 0~F 来存储 如 1F 01 太浪费空间了 2.Delphi有没有自带方法实现
Z zjan521 Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-12 #2 用FF来表示其实效率是50% 可以接受的,一字节现在用两字节表示需要空格的话就是33% 比如邮件里边的编码效率好像也就是50%
T takashiki Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-12 #3 Delphi中有个Zlib单元,他可以压缩字符串,压缩以后全是乱码,压缩效率33%
Y yinxianglong Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-12 #4 zjan521说的不正确吧 1个Byte 8 位 标准字符集 只能用 7 位 包括你文件上传和下载都 都是用的 8bit to 7bit 什么规则我说不清,但一定是存在的我相信Delphi该提供了此项功能
zjan521说的不正确吧 1个Byte 8 位 标准字符集 只能用 7 位 包括你文件上传和下载都 都是用的 8bit to 7bit 什么规则我说不清,但一定是存在的我相信Delphi该提供了此项功能
Y yinxianglong Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-12 #5 to takashiki: 能说一下如何用吗
光 光子 Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-12 #6 我给你推荐BASE64编码,DELPHI是否有标准的函数我就不知道了,不过方法确实是一个标准
Y yinxianglong Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-12 #7 to 光子 好像是有 idBase64Encode & idBase64Decode 两个类 我看了一下帮助就是干着用的,但是没有例子,也没有具体说明 ,所以我不会用,不知有那们清楚的?
P Passion Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-12 #8 BASE64编码差不多是首选,不过这俩控件一直没用成功过。 有个函数,不过似乎只能Encode。
P powersite Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-13 #9 一看到这个标题, 我就想起这几天正在看的WEBSREVICE了,正如“光子”和“yinxianglong”所说,完全可以用Base64来实现,DELPHI6和DELPHI7的EncdDecd.Pas该UNIT中,procedure EncodeStream(input,output:TStream)和procedure DecdCodeStream(input,output:TStream)可以分别实现,其参数都是TStream,先将文件读入TStream中,用EncodeStream转化即可,此时,Output中已是String了,将该TSTREAM保存成文件即可! 可以用DecodeStream再将文本还原成原文件。
一看到这个标题, 我就想起这几天正在看的WEBSREVICE了,正如“光子”和“yinxianglong”所说,完全可以用Base64来实现,DELPHI6和DELPHI7的EncdDecd.Pas该UNIT中,procedure EncodeStream(input,output:TStream)和procedure DecdCodeStream(input,output:TStream)可以分别实现,其参数都是TStream,先将文件读入TStream中,用EncodeStream转化即可,此时,Output中已是String了,将该TSTREAM保存成文件即可! 可以用DecodeStream再将文本还原成原文件。
Z zjan521 Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-18 #11 文件的上传下载完全没必要用8-7的,直接传不就是了嘛 那种压缩编码8-7一般只用在发送邮件上边(其他协议是否采用我不清楚),因为用的最多的UNIX/Linux里边的邮件服务器SENDMAIL只采用了7比特的标准字符集,这样在传送中文的时候,就需要转化。BASE64就是其中的一种,具体不清楚,不过确实有直接把一个中文字节拆成两个字节(低四位,还有三位忘了是做什么的)
文件的上传下载完全没必要用8-7的,直接传不就是了嘛 那种压缩编码8-7一般只用在发送邮件上边(其他协议是否采用我不清楚),因为用的最多的UNIX/Linux里边的邮件服务器SENDMAIL只采用了7比特的标准字符集,这样在传送中文的时候,就需要转化。BASE64就是其中的一种,具体不清楚,不过确实有直接把一个中文字节拆成两个字节(低四位,还有三位忘了是做什么的)