Excel导出后某一列数据组合自动对齐

如图,最近做一个导出的功能,客户觉得导出后信息详情太过于拥挤,看得不舒服,需要分开点,由于此处不考虑用多列存放信息,仅限一列的这种特使情况以作为例子。

最后实现后的效果。

数据结构是这样的, string  details="姓名:东方|电话:13088772372|邀约人:小宝儿";

            string newstr=string.Empty;
            string[] sbarry = details.Split('|');
            for (int i = 0; i < sbarry.Length; i++)
            {
             newstr += AutoStr(30,sbarry[i]);
            }

 

 

复制代码
        /// <summary>
        /// 字符串自适应长度
        /// </summary>
        /// <param name="length">长度为Byte数组长</param>
        /// <param name="str">需要补齐的字符串</param>
        /// <returns></returns>
        public static string AutoStr(int length, string str)
        {
            string result = "";
            byte[] bytearray = System.Text.Encoding.Default.GetBytes(str);
            byte[] newbyte = new byte[length];
            for (int z = 0; z < bytearray.Length; z++)
            {
                newbyte[z] = bytearray[z];
            }
            for (int l = 0; l < newbyte.Length; l++)
            {
                if (newbyte[l] == 0)
                {
                    newbyte[l] = 161;//半角空格填充
                }
            }
            result += System.Text.Encoding.Default.GetString(newbyte);
            if (result.Substring(result.Length - 1) == "?")
            {
                result = result.Substring(0, result.Length - 1) + " ";//补齐一个字符的差距
            }
            return result;
        }
复制代码
posted @ 2015-11-20 17:07  大楚打码人  阅读(1256)  评论(0编辑  收藏  举报