在接收到的信息中如何去除多余的空字节
不知道如何处理,请高手指点一下。例如:name=text.txt0\0\0\0\0\0
如何将末尾的空字节去掉? --------------------编程问答-------------------- 在线等待 --------------------编程问答-------------------- 那位高手先给指点一下 --------------------编程问答-------------------- name=text.txt0\0\0\0\0\0
--没看明白你这句话 --------------------编程问答-------------------- name=text.txt0\0\0\0\0\0
是不是指C++的字符串结束符号啊? 用Replace("\0","");不行嘛 我这边可以啊 --------------------编程问答-------------------- Replace("\0","") --------------------编程问答-------------------- 如果是\0用的着去掉? --------------------编程问答-------------------- 是在C#中通过scoket通信,在接收端收到字节,将其转化为字符串,但在接收前已经定义好接收字节的大小,所以会有空字节
转为字符串的时候有那样的情况naem=text.txt0\0\0\0\0;
我是在传送一个文件的名字,接收到就成了这个样子了,我只是想将后的0\..去掉
给指点一下 --------------------编程问答-------------------- 用不着去掉该咋办啊
--------------------编程问答-------------------- 如果不去掉的话,在创建该文件的时候就会出现文件名中含有非法字符 --------------------编程问答-------------------- Replace("\0","") --------------------编程问答-------------------- 我也是字节转换为字符串啊。 Replace("\0","")应该没问题,而且\0这种结束符没必要去替换,是不是你编码不对啊。不然也不会出现中文的乱码..... --------------------编程问答-------------------- Trim('\0') --------------------编程问答-------------------- 可以使用与此同时表达式.
不过,还是象一楼说的,你没有把问题说清楚! --------------------编程问答-------------------- trim()应该可以的。它是把两边的空格去掉。 --------------------编程问答-------------------- trim()是不可以的
我在做socket程序也遇到了这个问题
string str = Encoding.Default.GetString(byteData).Trim(new char[]{'/0'});
有问题可以联系我 QQ:136170062
补充:.NET技术 , C#