如圖,最近做一個導出的功能,客戶覺得導出後信息詳情太過於擁擠,看得不舒服,需要分開點,由於此處不考慮用多列存放信息,僅限一列的這種特使情況以作爲例子。
最後實現後的效果。
數據結構是這樣的, 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; }