字符串换行控制代码片段

/// <summary>
/// 格式化字符串,按指定长度添加换行,如果本身有换行则看每一个换行的长度,如有超出加换行
/// </summary>
/// <param name="str"></param>
/// <param name="lineMaxCharCount"></param>
/// <returns></returns>
private string FormatString(String str,int lineMaxCharCount)
{
if (string.IsNullOrEmpty(str))
{
return string.Empty;
}
StringBuilder newStr
= new StringBuilder();
if (str.Contains("\r\n"))
{
String[] newStrs
= str.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
foreach (String item in newStrs)
{
if (item.Length > lineMaxCharCount)
{
int count = item.Length / lineMaxCharCount;
for (int i = 1; i < count + 1; i++)
{
newStr.Append(item.Insert(lineMaxCharCount
* i + (i - 1) * 2, "\r\n"));
}
newStr.Append(
"\r\n");
}
else
{
newStr.Append(item
+ "\r\n");
}
}
return newStr.ToString();
}
else
{
int len = str.Length;
if (len > lineMaxCharCount)
{
int count = len / lineMaxCharCount;
for (int i = 1; i < count + 1; i++)
{
str
= str.Insert(lineMaxCharCount * i + (i - 1) * 2, "\r\n");
}
str
= str + "\r\n";
}
return str;
}
}
posted @ 2011-06-02 14:40  KT野人  阅读(423)  评论(0编辑  收藏  举报