Javaサンプルコード辞典

ByteArrayOutputStream,DataOutputStream - 数値をバイト配列に変換する

コマンドライン引数で指定された数値をバイト配列に変換するサンプルコードです。バイト配列への変換には、「java.io.ByteArrayOutputStream」と「java.io.DataOutputStream」を使用します。

数値のバイトへの変換には、2つのストリームを使用して行います。1つ目のストリームはintなどプリミティブ型のデータを書き込むために使用できる「java.io.DataOutputStream」です。2つ目のストリームはバイト配列へのデータの出力に使用する「java.io.ByteArrayOutputStream」です。この2つのストリームを連結することにより数値のバイト配列への変換を行います。
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;

//コマンドライン引数で指定された数値をバイト配列に変換する
public class IntToBytes {

      public static void main(String[] args) {
            
            System.out.println("--処理開始--");
            
            //コマンドライン引数が入力されているかチェックを行う
            if(args.length == 0)
            {
                  System.out.println("コマンドライン引数を指定してください");
                  return;
            }
            //intなどプリミティブ型のデータを書き込むためのストリーム
            DataOutputStream out = null;
            
            try
            {
                  //コマンドライン引数をint型に変換する
                  int num = Integer.parseInt(args[0]);
                  
                  //バイト配列への出力を行うストリーム
                  ByteArrayOutputStream bout = new ByteArrayOutputStream();
                  //バイト配列への出力を行うストリームをDataOutputStreamと連結する
                  out = new DataOutputStream(bout);
                  //数値を出力する
                  out.writeInt(num);
                  
                  //バイト配列をバイトストリームから取り出す
                  byte[] bytes = bout.toByteArray();
                  
                  //取り出したバイト配列の内容を標準出力に表示する
                  for(byte b : bytes)
                  {
                        System.out.println(b);
                  }
            }
            
            catch(NumberFormatException e)
            {
                  System.out.println(e);
            }            
            catch(IOException e)
            {
                  System.out.println(e);
            }
            catch(Exception e)
            {
                  System.out.println(e);
            }
            //例外発生時にも確実にリソースが開放されるように
            //close()の呼び出しはfinallyブロックで行う。
            finally
            {
                  if(out != null)
                  {
                        try
                        {
                              out.close();
                        }catch(Exception e){ System.out.println(e); }
                  }
            }
            
            System.out.println("--処理終了--");

      }

}

(2007年11月3日)  

 ちょっと一休み. Javaキーワード並び替えゲーム

画面に表示される文字列を並び替えるとJavaに関連するキーワードになります。ヒントをたよりに並び替えを行ってエンターを押してください。 ユーザ登録をしてログインするとランキングに参加できます。
Flex Tips

DWRでリッチなWebページを作る!

Java Tips  java.io 編

Java Tips  java.lang 編