簡體   English   中英

JS相當於Java的URI

[英]JS encodeURI Equivalent of Java

我有一個文件路徑:

file://///10.10.10.10/Yev Pri - Ru─▒n G├╢z├╝yle Ortado─Яu.pdf

顯示為:

file://///10.10.10.10/Ye%20Pri%20-%20Ru%E2%94%80%E2%96%92n%20G%E2%94%9C%E2%95%A2z%E2%94%9C%E2%95%9Dyle%20Ortado%E2%94%80%D0%AFu.pdf

當我檢查HTML的<a/>標簽時。 我想在Java上生成相同的字符串。 當我用

URLEncoder.encode(path, StandardCharsets.UTF_8.displayName())

file%3A%2F%2F%2F%2F%2F10.10.10.10%2FYev+Pri+-+Ru%E2%94%80%E2%96%92n+G%E2%94%9C%E2%95%A2z%E2%94%9C%E2%95%9Dyle+Ortado%E2%94%80%D0%AFu.pdf

似乎瀏覽器應用了encodeURI() 如何使用瀏覽器獲取相同的字符串?

URLEncoder用於編碼表單數據。 要創建轉義的URL或URI,請使用java.net.URI類

URI uri = new URI("file", "///10.10.10.10/Yev Pri - Ru─▒n G├╢z├╝yle Ortado─Яu.pdf", null);
String escapedURI = uri.toASCIIString();

注意:您不能使用new URI("file://///10.10.10.10/Yev Pri - Ru─▒n G├╢z├╝yle Ortado─Яu.pdf")因為該構造函數不會執行轉義百分比合法地不能直接出現在URI中的字符。 類文檔顯式指定單參數構造函數期望該參數已經具有正確的轉義。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM