XML内の特定のNodeを文字列で取得する

概要 XML内の特定のNodeを文字列で取得する方法です。 サンプルコード XMLファイル <employees> <employee>太郎</employee> <employee>次郎</employee> <employee>𩸽️</employee> </employees> 実行結果 <employee>太郎</employee><employee>次郎</employee><employee>𩸽️</employee> 動作環境 jdk 1.8.0_45 参考サイト XM…

様々な方法で文字列を結合する

概要 StringBuilder, StringBuffer, StringJoiner, String#join, Collectors#joiningを使用して文字列を結合する方法です。 サンプルコード 実行結果 PlusOperator : 7183ms StringBuilder : 9ms StringBuffer : 11ms StringJoiner : 13ms String#join : 9ms…

Stream APIでリストを操作する

概要 Stream APIを使用してリストを操作する方法です。 サンプルコード 実行結果 [id=0の項目を取得する(全て)] Employee [id=0, name=Adam] Employee [id=0, name=Abel] [id, nameの昇順にソートする] Employee [id=0, name=Abel] Employee [id=0, name=Ada…

文字列を指定したバイト数に切り詰める

概要 文字列を指定したバイト数に切り詰める方法です。 マルチバイト文字の途中となる場合も、その前の文字まで切り出します。 サンプルコード 実行結果 あいうえ あいうえお あいうえお 動作環境 jdk 1.8.0_45

Selenium IDEでブラウザ操作を記録する

概要 Selenium IDEでブラウザ操作を記録する方法です。 以下の2つを利用します。 Selenium IDE - ブラウザ操作を記録し、テストコードを出力する。 Selenium WebDriver - 出力したテストコードを実行するためのライブラリ。 Selenium IDE のインストール Fi…

MacのEclipseをclean起動するコマンド

概要 MacのEclipseをclean起動するコマンドです。 実行コマンド Eclipseをclean起動 $ /Applications/eclipse/Eclipse.app/Contents/MacOS/eclipse -clean -clearPersistedState Eclipseをsudoで起動してしまい、動かなくなった時の対処方法 $ sudo chown -R…

Zip4jでパスワード付きZIPファイルを作成する

概要 Zip4jを使用してパスワード付きZIPファイルを作成する方法です。 サンプルコード 動作環境 jdk 1.8.0_45 zip4j 1.3.2 参考サイト Zip4j - Java library to handle Zip files

Cipherで暗号化と復号を行う

概要 Java標準ライブラリのCipherを使用して暗号化と復号する方法です。 サンプルコード 実行結果 original :e6 9a 97 e5 8f b7 e5 8c 96 e5 af be e8 b1 a1 encrypted:c2 48 61 e2 09 66 d7 a1 8d bc 4c 0e 29 5f aa 1c decrypted:e6 9a 97 e5 8f b7 e5 …

SuperCSVのAlwaysQuoteModeで全項目をダブルクォートで囲む

概要 SuperCSVのAlwaysQuoteModeを使用して全項目(null以外)をダブルクォートで囲む方法です。 サンプルコード 実行結果 "ID","名前" "0","Adam" "2","Brian" "1","Cliff" "2","Brian" "0","Abel" 動作環境 jdk 1.8.0_45 super-csv 2.3.1 super-csv-annotati…

BeanPredicateでリストから項目を抽出する

概要 リストから特定の項目を抽出する方法です。 Java 8だと以下のStream APIを使う方が簡単です。 hiro2tdn.hatenablog.com サンプルコード 実行結果 [id=0の項目を取得する(全て)] Employee [id=0, name=Adam] Employee [id=0, name=Abel] [id=0の項目を取…