!!!HTML 長い文字列の改行
*ブロック要素の中に長い文字列を置くと、折り返されない。
*例えば、IEとFirefoxでは、divタグの中に長い文字列を置いたときに挙動が異なる。
http://yoosee.net/d/archives/2005/01/04/002.html
http://archiva.jp/web/html-css/20060808013000.html
*GMailでは、を使ってた。
{{ref_image wbr.jpg}}
----
'''適当な位置に、を入れる'''
*HTMLタグ以外の特殊文字はエスケープされていること
public static String blockComment(String value, int column) {
final String WORD_BREAK_STR = "";
char[] c = value.toCharArray();
StringBuilder buf = new StringBuilder(c.length + 20);
boolean isInTag = false;
boolean isEscChar = false;
int charCnt = 0;
for(int i=0; i': isInTag = false; break;
case '&': isEscChar = true; break;
case ';': isEscChar = false; break;
default:
}
if (!isInTag) {
try {
charCnt += String.valueOf(c[i]).getBytes("Shift_JIS").length;
} catch (UnsupportedEncodingException e) {}
}
if (isEscChar) {
if (c[i]=='&') {
charCnt++;
}
}
buf.append(c[i]);
if (charCnt >= column) {
buf.append(WORD_BREAK_STR);
charCnt = 0;
}
}
return buf.toString();
}