0

我有一个来自 facebook 的网址,如下所示:

http:\/\/a6.sphotos.ak.fbcdn.net\/hphotos-ak-snc7\/s2048x2048\/582167_359167994154900_1489271360_n.jpg

它看起来很奇怪,我想这是众所周知的标准之一,但我没有在谷歌中找到答案。

你能说我如何从中获得正常的网址吗?

4

4 回答 4

1
String newString = replaceSample.replace("\\/", "/");

那是因为字符串被转义了

于 2012-07-21T14:06:54.013 回答
0

简单地说,你可以做的是:

replaceSample.replace("\", "" );

试试这个

于 2012-07-21T14:10:17.063 回答
0

如果您在*.html文件中找到此字符串,则这是手动使任何标准 URL 处理无法使用该 URL 的结果。这不是一个正确的 URL。这不是任何标准转义的结果。

另一方面:如果你在一些源代码中找到了这个字符串(虽然不是 Java),那么它\/可能会在编译时被替换为纯文本/,如下面的 C 示例所示:

#include <stdlib.h>
#include <stdio.h>

void main(){
    char *cp = "http:\/\/a6.sphotos.ak.fbcdn.net\/hphotos-ak-snc7\/s2048x2048\/582167_359167994154900_1489271360_n.jpg";

    printf("%s\n", cp);
}

输出是:

http://a6.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s2048x2048/582167_359167994154900_1489271360_n.jpg

Java中,编译器会抱怨“无效的转义序列”,甚至不会编译。

于 2012-07-21T16:11:24.290 回答
-2

那是因为它被逃脱了,你必须取消它

String url="http:\/\/a6.sphotos.ak.fbcdn.net\/hphotos-ak-snc7\/s2048x2048\/582167_359167994154900_1489271360_n.jpg";
url=URLDecoder.decode(url);
于 2012-07-21T14:05:31.347 回答