Java源码示例:org.apache.tomcat.util.buf.UEncoder.SafeCharsSet

示例1
@Test
public void testEncodeURLWithSlashInit() throws IOException {
    UEncoder urlEncoder = new UEncoder(SafeCharsSet.WITH_SLASH);

    String s = "a+b/c/d+e.class";
    assertTrue(urlEncoder.encodeURL(s, 0, s.length()).equals(
            "a%2bb/c/d%2be.class"));
    assertTrue(urlEncoder.encodeURL(s, 2, s.length() - 2).equals(
            "b/c/d%2be.cla"));

    try {
        urlEncoder.addSafeCharacter('+');
        fail();
    } catch (IllegalStateException e) {
        // OK
    }

    s = new String(new char[] { 0xD801, 0xDC01 });
    assertTrue(urlEncoder.encodeURL(s, 0, s.length())
            .equals("%f0%90%90%81"));
}
 
示例2
@Test
public void testEncodeURLWithSlashInit() throws IOException {
    UEncoder urlEncoder = new UEncoder(SafeCharsSet.WITH_SLASH);

    String s = "a+b/c/d+e.class";
    assertTrue(urlEncoder.encodeURL(s, 0, s.length()).equals(
            "a%2bb/c/d%2be.class"));
    assertTrue(urlEncoder.encodeURL(s, 2, s.length() - 2).equals(
            "b/c/d%2be.cla"));

    try {
        urlEncoder.addSafeCharacter('+');
        fail();
    } catch (IllegalStateException e) {
        // OK
    }

    s = new String(new char[] { 0xD801, 0xDC01 });
    assertTrue(urlEncoder.encodeURL(s, 0, s.length())
            .equals("%f0%90%90%81"));
}
 
示例3
@Test
public void testEncodeURLWithSlashInit() throws IOException {
    UEncoder urlEncoder = new UEncoder(SafeCharsSet.WITH_SLASH);

    String s = "a+b/c/d+e.class";
    Assert.assertTrue(urlEncoder.encodeURL(s, 0, s.length()).equals(
            "a%2bb/c/d%2be.class"));
    Assert.assertTrue(urlEncoder.encodeURL(s, 2, s.length() - 2).equals(
            "b/c/d%2be.cla"));

    s = new String(new char[] { 0xD801, 0xDC01 });
    Assert.assertTrue(urlEncoder.encodeURL(s, 0, s.length())
            .equals("%f0%90%90%81"));
}