タグ

base64に関するa2ikmのブックマーク (3)

  • Base64 encoding options on the Mac and iPhone

    Please note: this article is part of the older "Objective-C era" on Cocoa with Love. I don't keep these articles up-to-date; please be wary of broken code or potentially out-of-date information. Read "A new era for Cocoa with Love" for more. On Unix platforms, a common approach for Base64 encoding is to use libcrypto (the OpenSSL library). However, like most C libraries, you need to wrap it to int

    Base64 encoding options on the Mac and iPhone
  • Base 64 エンコーディングと改行 (line feed) の話 - ひだまりソケットは壊れない

    Base 64 エンコーディングすると、(使用している言語やライブラリによりますが) 勝手に改行 (line feed) が含まれてしまって困るということがしばしばあります。 例えば、Ruby の Base64::encode64 メソッドを使用した場合も改行が含まれてしまいます。 記事では、以下の内容について説明します。 Ruby において改行を含めない Base64 エンコーディングを行う方法 (Ruby に限らず一般的な話として) Base64 エンコーディングと改行 (line feed) の関係について Ruby で改行が含まれない Base 64 エンコーディングを行う方法 Ruby で base 64 エンコーディングをしようとするとき、テンプレート文字列 'm' を使って pack することが多いかと思います。 しかし、'm' を使った pack では何故か改行 (lin

    Base 64 エンコーディングと改行 (line feed) の話 - ひだまりソケットは壊れない
    a2ikm
    a2ikm 2013/05/22
    Base64.strict_(en|de)code64を使えばpackにm0が使われて改行が入らない
  • RubyでBase64 - 今日覚えたこと

    Rubyでファイルアップローダおよびダウンローダを作った。ブラウザからファイルを投稿して、DBに保存して、あとでダウンロードできるやつ。 ファイル実体をファイルシステムに保存するのではなく、DBに入れる。Webから見える領域に置いてそのままダウンロードしたり、Webから見えない領域に置いてプログラム経由でダウンロードさせる方式は、簡単そうに見えて、罠が多い。DBに入れてプログラム経由でダウンロードさせるのが結果的に一番簡単だと思う。 通常バイナリデータをDBに入れるときははBLOB型のカラムを使うと思うけど、今回はRuby/MySQLを使っていることもあり (PreparedStatementが使えない)、文字列だけのSQLでやる必要がある。 そこで、バイナリデータをBase64でエンコードし、LONGTEXT型のカラムに入れることにした。もちろん、ダウンロードの際は取り出したテキストデー

    RubyでBase64 - 今日覚えたこと
  • 1