我想把后两段字符转为*显示,比如192.168.102.25转成192.168.*.*,数据是绑定在listview控件中的,
格式如下<%#Eval("ip")%>,怎么才能达到我的要求,查资料都是讲格式化数字和日期的,没找到我想要的资料.请高手帮忙.

解决方案 »

  1.   


    public string SubIp(string Ip)
            {
                string newIp = null;
                string[] ipList = Ip.Split(new char[] { '.' },StringSplitOptions.RemoveEmptyEntries);
                if (ipList.Length == 4)
                {
                    newIp += ipList[0]+"."+ipList[1]+"."+"*.*";
                }
                return newIp;
            }
    绑定:<%# SubIp(Eval("ip").ToString())%>
      

  2.   

    很好,不过有个问题请教
    string[] ipList = Ip.Split(new char[] { '.' },StringSplitOptions.RemoveEmptyEntries);
    这一句我用string[] ipList = Ip.Split('.');也能达到目的,请问这2句有什么不同吗?
      

  3.   

    RemoveEmptyEntries   返回值不包括含有空字符串的数组元素当你的IP出现这种情况时你就明白了:
    192..168..25
      

  4.   

    http://msdn.microsoft.com/zh-cn/library/system.stringsplitoptions.aspx
      

  5.   

    太感谢了,不过我用Request.UserHostAddress来获取访问者的IP,不会存在返回有中空的地址吧?不可能取不到吧,最多也就是返回一个空字符串,不大可能出现缺字符的结果吧