我想使用Jake Wharton的DiskLruCache for Android来缓存磁盘上的CouchDb文档。 CouchDb ID只是任何JSON字符串,所以可以看看Sömething/Like/Thís
。但是,图书馆的文档状态为将UTF-8字符串转换为字母数字字符串,而不会丢失信息
每个缓存条目都有一个字符串键和一个固定数量的值。每个键必须匹配正则表达式
[a-z0-9_-]{1,64}
。
所以我需要一种方法来转换任意字符串以符合正则表达式[a-z0-9_-]{1,64}
,同时仍然是唯一的。我怎样才能优雅地做到这一点?
结果仍然应该(至少有点)可读吗?我的意思是,假设主要使用ASCII字符,是否应该转换? –
不,我可能还会注意到:我不必将其转换回来。所以哈希应该没问题。 – Maarten