Пример #1
0
Variant StringUtil::ChunkSplit(const String& body, int chunklen /* = 76 */,
                               const String& end /* = "\r\n" */) {
  if (chunklen <= 0) {
    throw_invalid_argument("chunklen: (non-positive)");
    return false;
  }

  String ret;
  int len = body.size();
  if (chunklen >= len) {
    ret = body;
    ret += end;
  } else {
    return string_chunk_split(body.data(), len, end.c_str(),
                              end.size(), chunklen);
  }
  return ret;
}
Пример #2
0
String StringUtil::ChunkSplit(CStrRef body, int chunklen /* = 76 */,
                              CStrRef end /* = "\r\n" */) {
  if (chunklen <= 0) {
    throw InvalidArgumentException("chunklen", "(non-positive)");
  }

  String ret;
  int len = body.size();
  if (chunklen >= len) {
    ret = body;
    ret += end;
  } else {
    char *chunked = string_chunk_split(body.data(), len, end, end.size(),
                                       chunklen);
    return String(chunked, len, AttachString);
  }
  return ret;
}
Пример #3
0
Variant StringUtil::ChunkSplit(CStrRef body, int chunklen /* = 76 */,
                               CStrRef end /* = "\r\n" */) {
  if (chunklen <= 0) {
    throw_invalid_argument("chunklen: (non-positive)");
    return false;
  }

  String ret;
  int len = body.size();
  if (chunklen >= len) {
    ret = body;
    ret += end;
  } else {
    char *chunked = string_chunk_split(body.data(), len, end.c_str(),
                                       end.size(), chunklen);
    return String(chunked, len, AttachString);
  }
  return ret;
}