縮短字符串
回答
由於URL的格式爲UTF-8,並且由於這些字符基於256,所以在基本32中編碼與整數代碼點相同的字符只能使它們變長。或者你是不是在問你聽到的是什麼?
此外,在Java字符串中基本是65536 UTF-16,因此將它們的代碼點編碼爲基本32將使Java字符串更長。
正如編碼二進制數據在基址64中使其長度增加4/3 - 每3個字節需要4個基本64字節進行編碼。
短URL服務(如'tinyurl')通過存儲一個大型數據庫表來工作,該表從短URL映射到完整表單。
當您請求一個tinyurl時,該服務會分配一個隨機看起來很短的url(目前未使用)並在其表中創建一個條目,將短url映射到您提供的較長url。
當您嘗試在瀏覽器中加載短url時,請求首先轉到tinyURL服務,該服務查找完整的URL,然後向瀏覽器發送一個HTTP重定向響應,告訴它轉到實際URL。
你可以通過做同樣的事情來實現你自己的URL縮短服務,但是如果你縮短了自己的URL,你可以在內部重定向到你的web服務器;例如使用一個servlet請求過濾器。
編輯:我以一種仍然允許解析URL的方式描述了這種縮短URL的方式。 (當你考慮它時,這是很重要的,如果你縮短了一個URL字符串,並且結果不再可以解析,那麼它就不再是一個有用的URL了。)
但是,這種方法也可以更普遍地使用;即通過創建一對Map<String,String>
對象並使用順序生成的短串與原始(可能更長)的串之間的雙向映射來填充它。有可能證明,它將給出比相同的一組長字符串中的任何算法壓縮或編碼方案更小的短字符串的平均大小。
不足之處是存儲映射所需的空間,以及您需要映射到任何位置(例如在任何計算機上)的事實,您需要執行從短到長或從長到短的轉換。
將數據庫中的全部網址和重定向URL的ID作爲
- 1. 縮短字符串
- 2. RegEx縮短字符串
- 3. 字符串突然縮短
- 4. STRL縮短字符
- 5. 縮短Java中的字符串
- 6. 縮短路徑字符串函數
- 7. 如何縮短Odata查詢字符串?
- 8. Mysql導入縮短csv字符串值
- 9. ASCII文本字符串縮短
- 10. C# - 如何縮短字符串
- 11. Exiftool縮短字符串輸出
- 12. 使用「...」身體縮短字符串
- 13. 在python中縮短字符串
- 14. 縮短PHP中的文本字符串
- 15. 縮短包含數據的字符串
- 16. 如何縮短字符串空比較?
- 17. 使用GZip壓縮字符串,字符串不會更短
- 18. 如何在壓縮/解壓縮字符串後獲取短字符串?
- 19. 短數字串的壓縮
- 20. 加密字符串,縮短長度較短
- 21. 使用縮短的字符串從數組中查找字符串值
- 22. Bigquery:將縮短的月份字符串轉換爲數字
- 23. 長按字母順序strjng以短字符串壓縮
- 24. 字符串縮減
- 25. 壓縮字符串
- 26. 字符串搜索算法可以快速匹配大量未縮短字符串中的縮寫嗎?
- 27. PHP字符串剪短
- 28. PHP短碼的字符串
- 29. Mod_rewrite短查詢字符串
- 30. MYSQL - int或短字符串?
縮短,你的意思是縮寫或重新編碼使用更少的字符? – joeslice 2010-02-12 05:19:03
你在談論文本壓縮嗎? – LiraNuna 2010-02-12 05:20:30
使用幾個字符 – Mark 2010-02-12 05:23:31