网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
05月18日漏签0天
perl吧 关注:5,584贴子:27,293
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 0回复贴,共1页
<<返回perl吧
>0< 加载中...

【求助】关于base64求助

  • 只看楼主
  • 收藏

  • 回复
  • 1beizhuce
  • 天降软妹
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
perl自带的base64模块我知道,但是开发之后的代码要在客户那里运行,
客户的机器是否有base64模块无法确认,于是我想把base64代码放到程序里面。
我在cpan下载了「MIME-Base64-Perl-1.00.tar.gz」,在里面找到如下代码
01sub encode_base64 ($;$)
02{
03     if ($] >= 5.006) {
04     require bytes;
05     if (bytes::length($_[0]) > length($_[0]) ||
06         ($] >= 5.008 && $_[0] =~ /[^\0-\xFF]/))
07     {
08         require Carp;
09         Carp::croak("The Base64 encoding is only defined for bytes");
10     }
11     }
12
13     use integer;
14
15     my $eol = $_[1];
16     $eol = "\n" unless defined $eol;
17
18     my $res = pack("u", $_[0]);
19     # Remove first character of each line, remove newlines
20     $res =~ s/^.//mg;
21     $res =~ s/\n//g;
22
23     $res =~ tr|` -_|AA-Za-z0-9+/|;                # `# help emacs
24     # fix padding at the end
25     my $padding = (3 - length($_[0]) % 3) % 3;
26     $res =~ s/.{$padding}$/'=' x $padding/e if $padding;
27     # break encoded string into lines of no more than 76 characters each
28     if (length $eol) {
29     $res =~ s/(.{1,76})/$1$eol/g;
30     }
31     return $res;
32}
问题:1。03-11行感觉是版本确认,还有其他特殊含义么,我想删掉不知道可以否。
       2。刚开始搞perl开发,cpan的代码我直接用可以么?有没有版权专利什么的?
       3。不知道我直接用这段代码有什么需要注意的地方么?还不是特别理解其他代码的意思。



登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 0回复贴,共1页
<<返回perl吧
分享到:
©2026 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示