Twitterの文字数制限は、半角280文字、全角140文字です。
自動ツイートでTwitter APIでメッセージを送信する時、テキスト文字列の中の改行は’\n’のエスケープ文字を使います。
Twitterは改行は半角1文字と扱うと思っていたので、改行の文字数をカウントする時に+1としていました。
しかしツイートのテキストに含まれる改行は’\n’なので、文字列としては+2で文字数がカウントされるんです。
改行がたくさんある場合は、その分だけ文字列の文字数は280文字を超えても大丈夫って事みたいです。
試しに下記の文字列をツイートしたらできました。文字列の文字数としては294文字ありますが、改行を1文字とすれば280文字になります。
chrMessages =
‘1234567890\n’ +
‘1234567890\n’ +
‘1234567890\n’ +
‘1234567890\n’ +
‘1234567890\n’ +
‘1234567890\n’ +
‘1234567890\n’ +
‘1234567890\n’ +
‘1234567890\n’ +
‘1234567890\n’ +
‘1234567890\n’ +
‘1234567890\n’ +
‘1234567890\n’ +
‘123\n’;
改行だけ文字数の数え方を変えるのは面倒なので、気にせず+2でカウントする処理とします。