大師有沒有被 parseInt("08") 扁過?還蠻痛的.....
所幸沒被扁過,不過看起來應該很痛!!0x就算了,用0開頭似乎不是好的In-band表示法,這樣看來,寫程式時的陷阱可多了!
事情是這樣的DateTime欄位日期格式轉換麻煩->不想使用DateTime格式->使用字串儲存日期(20060801)->月份日期出現0開頭->使用cint或parseInt將0去掉並且拿來做運算.....
string JSStringEscape(string raw, bool inHtmlAttribute)
好東西
我偷來用囉
拿來改進
class JavaScriptTool
//Java版(還沒測過)
public class SafeJSString
{
public static final String Escape(String strData, Boolean inHtmlAttribute)
java.lang.StringBuffer sbRet = new java.lang.StringBuffer();
sbRet.append("'");
if (strData != null)
char [] src = strData.toCharArray();
for(int i=0; i<src.length; i++)
//if(String.valueOf(src[i]).equals("\r\n"))
//{
// sbRet.append("\\n");
//}
//else
if(String.valueOf(src[i]).equals("\r"))
//sbRet.append("");
}
else if(String.valueOf(src[i]).equals("\n"))
sbRet.append("\\n");
else if(String.valueOf(src[i]).equals("'"))
sbRet.append("\\'");
else if(String.valueOf(src[i]).equals("\""))
if (inHtmlAttribute == true)
sbRet.append(""");
else
sbRet.append("\\\"");
sbRet.append(src[i]);
return sbRet.toString();
Java版(修正版)
一個醉心技術又酷愛分享的Coding魔人,十年的IT職場生涯,寫過系統、管過專案, 也帶過團隊,最後還是無怨無悔地選擇了技術鑽研這條路,近年來則以做一個"有為的中年人"自許。