经过仔细排查,我发现这个问题出在空格上,没错,就是空格,也就是空格跟空格并不是一回事,简直了。
我发现我在中文输入法下连续打字母,被选中的处于高亮状态下的字母中间会自动生成一个空格,问题就出在这个空格上,它无论是显示在UI上还是通过log打印出来,都跟普通的空格没有区别,但是在服务器(java)那边这个空格却被读成了“\u2006”,于是就出现了长度超限的问题,那该怎么解决呢,把这个空格替换成正常的空格就好了,但这行代码写出来很诡异,swift的代码,大家主要看空格就可以了,虽然并没什么两样,但是你可以复制。
textArea.text = textArea.text.stringByReplacingOccurrencesOfString(" ", withString: " ")
是不是很诡异,用空格替换另一个空格。