您的邮件于 2008-01-17 03:17:00 离开 北京市 处理中心。  处 理 时 间 处 理 地 点邮 件 状 态       
 2008-01-17   00:49:00北京市 到达处理中心,来自北京邮政速递局代收货款科  
 2008-01-17   03:17:00北京市 离开处理中心,发往福清市上面是三列两行. 行是不定的列是固定的
得到的这三列的字符串都挨着了
怎么样才能按列排放这三列呢.谢谢了

解决方案 »

  1.   

    用DATASET,然后每行一个ROW,每列一个COLUMNS不就可以了啊
      

  2.   

    string str = "处   理   时   间   处   理   地   点邮   件   状   态";
    str = str.Replace(" ", "").Replace("处理地点","  处理地点  ");
      

  3.   

    只要处理时间   处理地点是定长的,就可用Split或SubString来拆分,如果地点不定长但肯定以"市"结尾,也同样可以拆反,如果内容和长度都不能作为参考依据,那就叫生成这组数据的SB自己人工处理吧,计算机没办法。
      

  4.   

    2:
    string str = "2008-01-17       00:49:00北京市   到达处理中心,来自北京邮政速递局代收货款科";
    string[] strs = str.Split(new char[]{' '});
      

  5.   

    2:
    string str = "2008-01-17    00:49:00北京市  到达处理中心,来自北京邮政速递局代收货款科";
    string[] strs = str.Split(new char[]{' '});再对得到的strs进行分解即可得到你要的字符串
      

  6.   

    测试:
                    string str = "处   理   时   间   处   理   地   点邮   件   状   态";
                    str = str.Replace(" ", "").Replace("处理地点", "  处理地点  ");                string str1 = "2008-01-17    00:49:00北京市  到达处理中心,来自北京邮政速递局代收货款科";
                    string[] strs = str1.Split(new char[] { ' ' });输出:str:
    "处理时间  处理地点  邮件状态"
    strs:
    {维数:[7]}
        [0]: "2008-01-17"
        [1]: ""
        [2]: ""
        [3]: ""
        [4]: "00:49:00北京市"
        [5]: ""
        [6]: "到达处理中心,来自北京邮政速递局代收货款科"
      

  7.   

                WebBrowser webBrowser1 = new WebBrowser();
                webBrowser1.Navigate("http://www.ems.com.cn/");
                while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
                {
                    Application.DoEvents();
                }
                HtmlElement txt = webBrowser1.Document.All["mailNum"];
                txt.SetAttribute("value", textBox1.Text);
                HtmlElement btn = webBrowser1.Document.All["btchaxun_r1_c2"];
                btn.InvokeMember("Click");
                while (webBrowser1.Url.ToString().IndexOf("qcgzOutQueryAction.do") < 0)
                {
                    Application.DoEvents();
                }
                while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
                {
                    Application.DoEvents();
                }
                string str = webBrowser1.Document.Body.InnerText.ToString();
                int i = str.IndexOf("您的邮件于");
                int y = str.IndexOf("继续查询其他邮件号码:") - 6;
                str = str.Remove(y, str.Length - y);
                richTextBox1.Text = str.Remove(0, i).Trim();
    这是源码
      

  8.   

    處理時間的長度不變,可以用SubString提取,那麼剩下的就是處理地點和狀態而且中間有一個空格,用Split拆分,完畢
      

  9.   

                string str = "2008-01-17       00:49:00北京市   到达处理中心,来自北京邮政速递局代收货款科";
                str.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
      

  10.   

    不知道你是不是Web的.如果是为了排版,单纯用String的处理方式是没有办法完美的,因为根本不知道"处理地点","邮件状态"的值有多长.如果是要呈现在Web上面,我建议用table脚本的方式进行排列,这样一定可以对其的.
    this.Label1.Text = @"<table>
                <tr>
                    <td >
                        处理时间</td>
                    <td >
                        处理地点</td>
                    <td >
                        邮件状态</td>
                </tr>
                <tr>
                    <td s>
                        2008-01-17 00:49:00</td>
                    <td >
                        北京市</td>
                    <td >
                        到达处理中心,来自北京邮政速递局代收货款科</td>
                </tr>
            </table>";
    不知道这样是否满足您的需求,
    只是给一个思路....
      

  11.   


    this.Label1.Text = @"<table>
                <tr>
                    <td >
                        处理时间</td>
                    <td >
                        处理地点</td>
                    <td >
                        邮件状态</td>
                </tr>
                <tr>
                    <td >
                        2008-01-17 00:49:00</td>
                    <td >
                        北京市</td>
                    <td >
                        到达处理中心,来自北京邮政速递局代收货款科</td>
                </tr>
            </table>";
      

  12.   

    您的邮件于   2008-01-17   03:17:00   离开   北京市   处理中心。   
      处   理   时   间   处   理   地   点邮   件   状   态               
      2008-01-17       00:49:00北京市   到达处理中心,来自北京邮政速递局代收货款科     
      2008-01-17       03:17:00北京市   离开处理中心,发往福清市 
    ================随便找一行
    第二列前8个字符是时间,其余的是地点
    第三列前两个字取出来string s ="第一列"+" "+"第二列前八个字符"+" "+"第三列前两个字符"+" "+"第二列其余字符"+" "+"处理中心";
      

  13.   


     string s1 = "第一列";
     string s2 = "第二列";
     string s3 = "第三列";
     string ends=s1+" "+s2.Substring(0,8)+" "+s3.Substring(0,2)+" "+s2.Substring(8,s2.Length-8)+" "+((s3.Split(new char[]{','}))[0]).Substring(2,((s3.Split(new char[]{','}))[0]).Length-2);