Exchange2007获取OWA邮箱容量的代码

//一下方法获取到了Response对象后获取他的html内容 就是:<div id=mbUsg>15224</div><div id=dspMbUsg>14.87 KB</div>
        private string GetMailboxUsageString() {
            string url = Config.ExchangeServerPath.Replace("/exchange/", "/owa/") + "ev.owa?oeh=1&ns=Tree&ev=GetMailboxUsage";
            WebResponse ret = HttpCallGetMailboxUsage(url);
            Stream stream = ret.GetResponseStream();
            StreamReader sr = new StreamReader(stream, Encoding.GetEncoding("UTF-8"));
            string htmlstr = sr.ReadToEnd();
            return htmlstr;
        }

        /// <summary>
        /// 获取用户已经使用的容量
        /// </summary>
        /// <returns>返回已使用容量的byte数 /1024 单位为kb  再/1024 单位为 MB</returns>
        public int GetMailboxUsage() {
            string usageString = GetMailboxUsageString();
            Match mc = Regex.Match(usageString, @"^<div id=mbUsg>([\d]+)</div><div id=dspMbUsg>([\d|\w|\W]+)</div>$");
            return Convert.ToInt32(mc.Groups[1].Value);
        }

        /// <summary>
        /// 获取用户已经使用的容量
        /// </summary>
        /// <returns>返回已使用容量的原始文本</returns>
        public string GetMailboxUsageSourceString() {
            string usageString = GetMailboxUsageString();
            Match mc = Regex.Match(usageString, @"^<div id=mbUsg>([\d]+)</div><div id=dspMbUsg>([\d|\w|\W]+)</div>$");
            return mc.Groups[0].Value;
        }

        /// <summary>
        /// 获取用户已经使用的容量
        /// </summary>
        /// <returns>返回已使用容量的显示文本</returns>
        public string GetMailboxUsageDisplayString() {
            string usageString = GetMailboxUsageString();
            Match mc = Regex.Match(usageString, @"^<div id=mbUsg>([\d]+)</div><div id=dspMbUsg>([\d|\w|\W]+)</div>$");
            return mc.Groups[2].Value;
        }

你可能感兴趣的:(Exchange)