我在写服务器 - 客户端项目。服务器端是用Java开发的,而客户端是用Python开发的。最近,当我尝试通过套接字发送一个字符串时,服务器会在其中使用空格。比方说,我送:我怎样才能摆脱“空白”
1:user:password
在服务器端我使用一个字符串分割这一个字符串转换成3个,第一个字符串(在这种情况下,“1”)将告诉服务器做什么用剩下的(用户名和密码)。现在的问题是,当我打印的内容我在服务器端的插口得到我得到这样的:
1 : u s e r : p a s s w o r d
与每一个字符之间的白色空间。我试图使用字符串函数replaceAll("\\s","")
和replaceAll("\\s+","")
,但他们似乎没有工作。在我用replaceAll("\\S","k")
用大写字母S,并意识到它实际上给我看:
kkkkkkkkkkkkkkkkkkkkkkkkkkkkk
所以我的结论是,这些“白空间”并不是真正的空格,因为\\S
替代“任何不是空格字符(包括字母和数字,以及标点符号等)“。
我的问题是:那些空白是什么,我该如何摆脱它们?
在此先感谢。对不起,很长的职位。
显示客户端写入套接字和服务器从套接字读取的代码? – vanza
我想,首先,你应该知道你真的通过套接字传输了哪些数据,一个带有空格或没有空格的字符串。如果python客户端只发送ascii none-whitespace字符,那么你的java服务器肯定有问题。 –
我在发送之前打印出我发送的字符串,并且没有任何空白。 – mapl93