51

いくつかの条件が満たされた場合、特定の属性を空白に設定する必要がある既存のフレームワークを使用しています。残念ながら、フレームワークでは、属性値に空白のみを設定することはできません。具体的には、

!(org.apache.commons.lang.StringUtils.isBlank(value))値を確認する

どういうわけかこれをバイパスして、空白/目に見えないように見えるが空白とは見なされない値を設定することは可能ですか?

現在ダッシュ「-」を使用していますが、可能かどうかは興味深いと思います。

4

4 に答える 4

41

Unicode 文字 'ZERO WIDTH SPACE' (U+200B)を試してください。WPによると、空白ではありません: ホワイトスペース#Unicode

のコードはStringUtils.isBlankそれを気にしません:

public static boolean isBlank(String str) {
int strLen;
if (str == null || (strLen = str.length()) == 0) {
          return true;
     }
for (int i = 0; i < strLen; i++) {
     if ((Character.isWhitespace(str.charAt(i)) == false)) {
                   return false;
                }
         }
 return true;
  }
于 2013-11-12T19:04:34.460 に答える