我想直接将我在java google webapp中为JDO对象生成的密钥用作我向用户提供的html文档中的id属性。
html id字符串不区分大小写,必须以[a-zA-Z]
开头,然后才能包含[A-Za-z0-9-_]
。使用KeyFactory.keyToString(key)
(Java)将Google应用引擎密钥转换为字符串时,会返回“网页安全字符串。例如,此字符串可以安全地用作嵌入HTML文档的网址参数。”
java字符串中的websafe格式是否与html ID属性格式兼容?
如果没有,那么在两种字符串格式之间进行转换的最佳方法是什么?所以我可以有两种类似的方法:
public static String htmlToGae(String htmlID){ ... }
public static String gaeToHTML(String gaeID){ ... }
if (gaeToHTML(htmlToGae(htmlID)) == htmlID)
return "thank you! :)";
一个简单的“所有swanes都是白色的” - 测试似乎表明KeyFactory返回的网络安全字符串与html id属性兼容:
for (int ii = 0; ii < 100; ii++)
out.println(KeyFactory.createKeyString("Document", "swan" + ii));
答案 0 :(得分:1)
是的,它完全可用作HTML ID。