public static String formUrlEncode(
final NameValuePair[] pairs,
final String charset) throws UnsupportedEncodingException {
CharArrayBuffer buf = new CharArrayBuffer(32);
for (int i = 0; i < pairs.length; i++) {
URLCodec codec = new URLCodec();
NameValuePair pair = pairs[i];
if (pair.getName() != null) {
if (i > 0) {
buf.append("&");
}
buf.append(codec.encode(pair.getName(), charset));
buf.append("=");
if (pair.getValue() != null) {
buf.append(codec.encode(pair.getValue(), charset));
}
}
}
return buf.toString();
}