用socket发送文章内容时,接收到的内容变成了没有空格和换行的形式了,也就是说接收到的内容全部连接成了一块,没有结构和层次了,请问怎样解决这个问题,怎样才能建立标准的输入输出呢,也就是说输入是什么样子的,输出就是什么样子的?

解决方案 »

  1.   

    我敢100%确定,不是什么docket把内容变了。至于是什么,请你自己去考虑socket接收到文章之后,你的程序是怎么干的吧!
      

  2.   

    其实我们经常看到有人把(允许多行编辑的)TextBox得到的字符串,写入html字符串,这是是不是差的离谱?那些有\t、\n之类的东西,在html中算个什么?
      

  3.   

    我怀疑LZ直接把\R这样的字符写到HTML里去了....
    注意有的是<BR> 
    有的是\R
    还有的必须是\R\N!
      

  4.   

    我发送和接收时都是用流的形式实现的
    发送时:
    byte[] bytesdata = Encoding.UTF8.GetBytes(messageString);//转成utf8编码
    ns.BeginWrite(bytesdata, 0, bytesdata.Length, new AsyncCallback(SendCallBack), ns);//发送数据
    //上面的ns是指NetwordStream对象来的,bytesdata是缓冲区//接收时
    string MessageStr = Encoding.UTF8.GetString(dataread.msg, 0, recv);//将接收到的字节转化成字符串
    //上面的dataread.msg是接收缓冲区,recv为实际接收到的数据量
    大概情况就是这样的
      

  5.   

    原来接收是没有问题的,也有转行的,原因是我把接收到的内容放在textbox里面了,所以看上去就没有转行,不好意思,浪费大家的表情了。