入門JavaのgetBytes|基本的な使い方やStingとbyte配列の相互変換ヤマシタ2017/3/162019/5/16JavaのString型の変数を扱う上で、byte型に変換が必要なことがあります。この記事では、getBytesの使い方やString型とbyte型の変換方法について、以下の内容で解説していきます。そもそもbyte型ってなに?getBytesの使い方について知りたいbyte型のさまざまな変換方法について知りたい16進数文字列⇔byte配列の変換方法が知りたいgetBytesの基本的な使い方から変換方法までわかりやすく解説していますので、ぜひ参考にしてください。まとめJavaのbyte型とはbyte型とは1バイト(8ビット)のサイズの整数値を表します。Javaのbyte型は符号付きで-128から127までです。文字列は文字の配列ですが、それぞれの文字は文字コードに従ってbyte型に変換することができます。文字列はbyte型の配列に変換できますし、byte型の配列を文字列に変換することができます。JavaのgetBytesとはgetBytesメソッドは、対象の文字列をバイトシーケンスにエンコード化して、結果をByte型の配列として返すメソッドです。以下のように記述して使用します。String.getBytes()また、getBytesは引数に文字コードを指定することもできます。charset)文字コードはUTF-8、Shift-jis、ASCIIコードなども指定可能です。文字コードについては、以下の記事で詳しく解説しています。2019年3月28日getBytesの使い方ここでは、getBytesメソッドを使用して、String型とByte型の相互変換の方法を説明します。byte配列からStringへの変換byte型からString型へ変換する場合は、String型のコンストラクタにbyte型の値を指定します。以下にbyte型からString型へ変換する方法を記述します。appleサンプルではbyte型の配列を宣言してgetBytesメソッドでバイナリの文字列を設定し、Stringのコンストラクタの引数に設定したバイナリの文字列を指定しています。getBytesメソッドは文字コードを指定することも可能です。文字コードの指定は、getBytesメソッドで引数に文字コードを指定します。StandardCharsetsクラスはJava7で追加され、文字コードを指定する際に使用します。Stringからbyte配列への変換String型からbyte型へ変換する場合は、変換時にgetBytesメソッドを使用します。pre>実行結果:97112112108101サンプルではbyte型の配列を宣言してString型の変数に対して、getBytesメソッドを使用してByte型に変換しています。byte型の値は-128から127の10進数で表現するため、ループで配列の要素ごとに出力すると、実行結果のようになります。getBytesメソッドはString→byte変換時にも文字コードを指定することが可能です。byte型のさまざまな変換方法byte型は、さまざまな方法で変換することができます。実際のシステム開発では、バイナリデータや文字列を16進数のデータに変換して、端末間でやりとりすることがあります。byte、Stringを16進数に変換するには、2つの方法があります。Codec」のHexクラスを使用することで変換することができます。Codec」のライブラリは、以下のページからダウンロードできます。http://commons.apache.org/proper/commons-codec/download_codec.cgi2つ目は、DatatypeConverterクラスを利用する方法です。このクラスを使うとライブラリを追加する必要はありません。byte配列から16進数文字列への変換byte型から16進数の文字列に変換する方法を、以下に記述します。DatatypeConverterクラスを使います。}実行結果:6170706C65サンプルでは、バイト型配列にバイナリ文字列を設定し、DatatypeConverterクラスのprintHexBinaryメソッドを使用して、バイナリ文字列を指定しています。16進数文字列からbyte配列への変換16進数文字列からbyte型へ変換する方法を、以下に記述します。}実行結果:appleサンプルでは、String型の16進数文字列を設定し、DatatypeConverterクラスのparseHexBinaryメソッドを使用して、引数に16進数文字列を指定しています。2019年5月7日まとめここでは、getBytesメソッドを使用したString型とbyte型の相互変換の方法や、文字コード指定、16進数への変換方法などを説明しました。String型⇔byte型に変換する処理は、さまざまな場面で使用することがあると思います。getBytesメソッドの使用方法を忘れてしまったら、この記事を思い出してくださいね!TweetPocket無料でSEからWebエンジニアへ転職しませんか?侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、システムエンジニアという職業だけどコードが書けない事務作業が多くスキルがないため将来が不安スクールに通うと完全未経験者と同じスタートになるからレベルが合わないという、すでに知識があるSEならではのお悩みがあることに気づきました。弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。こちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。無料体験レッスンを予約する書いた人ヤマシタシステムエンジニアとして10年勤務→フリーランスへ。現在は侍ブログ編集部としてこれまでに200記事以上の記事を執筆。大規模システム開発からWebアプリ開発まで経験あり。最近ではPythonの機械学習に挑戦中。