Java UUEncode

はじめに

事前に以下のライブラリを用意します。

実装例

サンプルでは、動作確認しやすいようにmainメソッドで実行できるようにしてあります。 結果だけを確認したい場合は、この記事の一番下のリンク先で使えるようにしてありますのでご覧ください。

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import javax.mail.MessagingException;
import javax.mail.internet.MimeUtility;

/**
 *
 * @author tool-taro.com
 */
public class UUEncoder {

    public static void main(String[] args) throws MessagingException, IOException {

        //エンコードしたい文字列
        String source = "タロウ";
        //エンコード前にバイト配列に置き換える際のエンコーディング
        String encoding = "UTF-8";

        //エンコード処理
        ByteArrayOutputStream bout = new ByteArrayOutputStream();
        OutputStream out = null;
        try {
            out = MimeUtility.encode(bout, "uuencode");
            out.write(source.getBytes(encoding));
        }
        finally {
            if (out != null) {
                try {
                    out.close();
                }
                catch (Exception e) {
                }
            }
        }

        String result = new String(bout.toByteArray(), encoding);
        //標準出力
        System.out.format("エンコード結果=%1$s", result);
    }
}

動作確認

$ javac UUEncoder.java
$ java UUEncoder
$ エンコード結果=begin 644 encoder.buf
)XX*_XX.MXX*F
 
end

環境

上記の実装をベースにWebツールも公開しています。 UUEncode|Web便利ツール@ツールタロウ