brとnbspの実装をStringUtilsに移動。
@@ -66,4 +66,61 @@ | ||
66 | 66 | } |
67 | 67 | } |
68 | 68 | |
69 | + /** | |
70 | + * 指定した文字列の改行を<br>タグに変換します。 | |
71 | + * | |
72 | + * @param value 変換対象の文字列 | |
73 | + * @return 変換後の文字列。引数<code>value</code>が<code>null</code>の場合は空文字列 | |
74 | + */ | |
75 | + public static String convertLineSeparator(String value){ | |
76 | + if(value == null){ | |
77 | + return ""; | |
78 | + } | |
79 | + | |
80 | + value = value.replace("\r\n", "\n"); | |
81 | + value = value.replace("\r", "\n"); | |
82 | + value = value.replace("\n", "<br>"); | |
83 | + | |
84 | + return value; | |
85 | + } | |
86 | + | |
87 | + /** | |
88 | + * 指定した文字列に含まれるタブや半角スペースを&nbsp;に変換します。 | |
89 | + * <p> | |
90 | + * 連続した半角スペースの最初の1つめは&nbsp;に変換しません。 | |
91 | + * また、タブ文字は半角スペース4つ分の空白に変換します。 | |
92 | + * | |
93 | + * @param value 変換対象の文字列 | |
94 | + * @return 変換後の文字列。引数<code>value</code>が<code>null</code>の場合は空文字列 | |
95 | + */ | |
96 | + public static String convertWhitespace(String value){ | |
97 | + if(value == null){ | |
98 | + return ""; | |
99 | + } | |
100 | + | |
101 | + // タブは半角スペース4つ分に変換 | |
102 | + value = value.replace("\t", " "); | |
103 | + | |
104 | + StringBuilder sb = new StringBuilder(); | |
105 | + boolean flag = true; | |
106 | + | |
107 | + for(int i=0;i<value.length();i++){ | |
108 | + char c = value.charAt(i); | |
109 | + if(c == ' '){ | |
110 | + if(flag){ | |
111 | + // 連続した半角スペースの最初の1文字は変換しない | |
112 | + sb.append(c); | |
113 | + flag = false; | |
114 | + } else { | |
115 | + sb.append(" "); | |
116 | + } | |
117 | + } else { | |
118 | + sb.append(c); | |
119 | + flag = true; | |
120 | + } | |
121 | + } | |
122 | + | |
123 | + return sb.toString(); | |
124 | + } | |
125 | + | |
69 | 126 | } |
@@ -40,17 +40,10 @@ | ||
40 | 40 | * |
41 | 41 | * @param value 変換対象の文字列 |
42 | 42 | * @return 変換後の文字列。引数<code>value</code>が<code>null</code>の場合は空文字列 |
43 | + * @see StringUtils#convertLineSeparator(String) | |
43 | 44 | */ |
44 | 45 | public static String br(String value){ |
45 | - if(value == null){ | |
46 | - return ""; | |
47 | - } | |
48 | - | |
49 | - value = value.replace("\r\n", "\n"); | |
50 | - value = value.replace("\r", "\n"); | |
51 | - value = value.replace("\n", "<br>"); | |
52 | - | |
53 | - return value; | |
46 | + return StringUtils.convertLineSeparator(value); | |
54 | 47 | } |
55 | 48 | |
56 | 49 | /** |
@@ -61,35 +54,10 @@ | ||
61 | 54 | * |
62 | 55 | * @param value 変換対象の文字列 |
63 | 56 | * @return 変換後の文字列。引数<code>value</code>が<code>null</code>の場合は空文字列 |
57 | + * @see StringUtils#convertWhitespace(String) | |
64 | 58 | */ |
65 | 59 | public static String nbsp(String value){ |
66 | - if(value == null){ | |
67 | - return ""; | |
68 | - } | |
69 | - | |
70 | - // タブは半角スペース4つ分に変換 | |
71 | - value = value.replace("\t", " "); | |
72 | - | |
73 | - StringBuilder sb = new StringBuilder(); | |
74 | - boolean flag = true; | |
75 | - | |
76 | - for(int i=0;i<value.length();i++){ | |
77 | - char c = value.charAt(i); | |
78 | - if(c == ' '){ | |
79 | - if(flag){ | |
80 | - // 連続した半角スペースの最初の1文字は変換しない | |
81 | - sb.append(c); | |
82 | - flag = false; | |
83 | - } else { | |
84 | - sb.append(" "); | |
85 | - } | |
86 | - } else { | |
87 | - sb.append(c); | |
88 | - flag = true; | |
89 | - } | |
90 | - } | |
91 | - | |
92 | - return sb.toString(); | |
60 | + return StringUtils.convertWhitespace(value); | |
93 | 61 | } |
94 | 62 | |
95 | 63 | /** |
@@ -96,7 +64,7 @@ | ||
96 | 64 | * <code>java.util.Date</code>オブジェクトを日付形式にフォーマットして表示します。 |
97 | 65 | * |
98 | 66 | * @param date 変換対象の<code>java.util.Date</code>オブジェクト |
99 | - * @return 日付形式にフォーマットされた文字列 | |
67 | + * @return 日付形式にフォーマットされた文字列。引数<code>date</code>が<code>null</code>の場合は空文字列 | |
100 | 68 | * @see DateUtils#formatDate(Date) |
101 | 69 | */ |
102 | 70 | public static String date(Date date){ |
@@ -107,7 +75,7 @@ | ||
107 | 75 | * <code>java.util.Date</code>オブジェクトを日時形式にフォーマットして表示します。 |
108 | 76 | * |
109 | 77 | * @param date 変換対象の<code>java.util.Date</code>オブジェクト |
110 | - * @return 日時形式にフォーマットされた文字列 | |
78 | + * @return 日時形式にフォーマットされた文字列。引数<code>date</code>が<code>null</code>の場合は空文字列 | |
111 | 79 | * @see DateUtils#formatDatetime(Date) |
112 | 80 | */ |
113 | 81 | public static String datetime(Date date){ |
@@ -118,7 +86,7 @@ | ||
118 | 86 | * <code>java.util.Date</code>オブジェクトを時間形式にフォーマットして表示します。 |
119 | 87 | * |
120 | 88 | * @param date 変換対象の<code>java.util.Date</code>オブジェクト |
121 | - * @return 時間形式にフォーマットされた文字列 | |
89 | + * @return 時間形式にフォーマットされた文字列。引数<code>date</code>が<code>null</code>の場合は空文字列 | |
122 | 90 | * @see DateUtils#formatTime(Date) |
123 | 91 | */ |
124 | 92 | public static String time(Date date){ |