URL在java中对名称进行编码
我想用java对一个名称进行URL编码,包括双引号,但它忽略了名称中的双引号 e、 g 它正在印刷URL在java中对名称进行编码,java,urlencode,Java,Urlencode,我想用java对一个名称进行URL编码,包括双引号,但它忽略了名称中的双引号 e、 g 它正在印刷 abc 但是我希望url是 %22abc%22 我在网上搜索,但什么也没找到 在这种情况下,您应编写String name=“\“abc\”这是因为您的“姓名”不包含双引号。你想要的是: String name = "\"abc\""; 现在,您的名称包含双引号:“abc”双引号不是名称字符串的一部分。如果你想这样做,就使用 String name = "\"abc\""; 如果不希望n
abc
但是我希望url是
%22abc%22
我在网上搜索,但什么也没找到 在这种情况下,您应编写
String name=“\“abc\”代码>这是因为您的“姓名”不包含双引号。你想要的是:
String name = "\"abc\"";
现在,您的名称包含双引号:“abc”双引号不是名称
字符串的一部分。如果你想这样做,就使用
String name = "\"abc\"";
如果不希望name
变量包含引号,但希望将引号添加到URL编码中,请使用
String url = URLEncode("\"" + name+ "\"","UTF-8");
%22
在URL编码中引用了双引号(“
)。因此,您需要将其添加到URL字符串中。为了在Java字符串中添加双引号,您需要通过反斜杠(\
)对其进行转义
要将编码的URL预期为%22abc%22
,问题本身与URL编码无关。它应该更像是“如何在字符串中放置双引号”。java语言规范(3.10.6)解释了如何转义(使用反斜杠).因此,标题是错误的,urlencode
标记不应该在那里。这些基本问题并不有趣,这可能就是为什么它两次被否决的原因。@herman无论如何感谢您给出了正确的答案。
String url = URLEncode("\"" + name+ "\"","UTF-8");
String name = "\"abc\"";