[#2023] Class Method の index — (Dezawa Shin-ichiro) <dezawa@...>

出沢です

13 messages 1997/02/02

[#2158] [Req] pack/unpack — keiju@... (Keiju ISHITSUKA)

けいじゅ@SHLジャパンです.

14 messages 1997/02/18
[#2166] Re: [Req] pack/unpack — matz@... (Yukihiro Matsumoto) 1997/02/18

まつもと ゆきひろです.

[#2277] ruby 1.0-970228 available — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです.

16 messages 1997/02/28

[ruby-list:2242] [BUG] decode64

From: Shin-ichiro Hara <sinara@...>
Date: 1997-02-23 08:37:17 UTC
List: ruby-list #2242
原です。

lib/base64.rb に入った「わたなべ式」decode64 ですが、、


def decode64(str)
  string = ''
  for line in str.split("\n")
    line.delete!('^A-Za-z0-9+')         # remove non-base64 chars
    line.tr!('A-Za-z0-9+', ' -_')       # convert to uuencoded format
    len = ["#{32 + line.length * 3 / 4}"].pack("c")
                                        # compute length byte
    string += "#{len}#{line}".unpack("u") # uudecode and concatenate
  end
  return string
end


これって BASE63 になってません?(^^;

    line.delete!('^A-Za-z0-9+') =>
    line.delete!('^A-Za-z0-9+/')
    
    line.tr!('A-Za-z0-9+', ' -_') =>
    line.tr!('A-Za-z0-9+/', ' -_')

ですよね。


そもそも、Christiansen の

> #!/usr/bin/perl
> while (<>) {
>   tr#A-Za-z0-9+/##cd;                   # remove non-base64 chars
>   tr#A-Za-z0-9+/# -_#;                  # convert to uuencoded format
>   $len = pack("c", 32 + 0.75*length);   # compute length byte
>   print unpack("u", $len . $_);         # uudecode and print
> }

から変なんだけど。

自分が使ってるのは、いじっているうちに直していて、今まで
気づかなかったみたです。

In This Thread

Prev Next