I must do
String str = "Hello World";
int n = str.length()+1;
char st[n];
str.toCharArray(st,n);
client.print(st);
instead of
client.print(str)
to send s String in on one TCP/IP packet.
The problem is in Print.cpp:
void Print::print(const String &s)
{
for (int i = 0; i < s.length(); i++) {
write(s*);*
- }*
}
and then every write(char) is send in Client.cpp
as in one TCP/IP packet. That sinks the transfrer
rate a lot.
It might be idea to do a write(const String &) in Print and
then implement print(const String &) by calling that.
And then in Client one must override write(const String &)
by writing all chars to same packet.
One problem to implement that is that
void String::toCharArray(char *buf, unsigned int bufsize)
and
void String::getBytes(unsigned char *buf, unsigned int bufsize)
are not const methods as they should be.