C#文字换行的实现方法
程序员文章站
2023-12-15 08:32:22
本文实例讲述了c#文字换行的实现方法。分享给大家供大家参考。具体实现方法如下:
关键代码如下:
复制代码 代码如下:#region 文字换行
///
测试如下:
运行结果如下图所示:
本文实例讲述了c#文字换行的实现方法。分享给大家供大家参考。具体实现方法如下:
关键代码如下:
复制代码 代码如下:
#region 文字换行
/// <summary>
/// 文字换行
/// <para>eg:stringhelper.wraptext("yanzhiwei", 3);==>"yan\r\nzhi\r\nwei"</para>
/// </summary>
/// <param name="data">需要换行的文字</param>
/// <param name="maxwidth">多少长度换行</param>
/// <returns>换行好的文字</returns>
public static string wraptext(this string data, int maxwidth)
{
int _stringcount = data.length;
if (maxwidth > 0 && _stringcount > maxwidth)
{
stringbuilder _builderstring = new stringbuilder(data);
int _breakcount = _builderstring.length / maxwidth;
for (int i = 0; i < _breakcount; i++)
{
int _insertposition = i * maxwidth;
if (_insertposition != 0)
{
int _offset = (i - 1) * 2;//(\r\n)
_builderstring.insert(_insertposition + _offset, environment.newline);
}
/// <summary>
/// 文字换行
/// <para>eg:stringhelper.wraptext("yanzhiwei", 3);==>"yan\r\nzhi\r\nwei"</para>
/// </summary>
/// <param name="data">需要换行的文字</param>
/// <param name="maxwidth">多少长度换行</param>
/// <returns>换行好的文字</returns>
public static string wraptext(this string data, int maxwidth)
{
int _stringcount = data.length;
if (maxwidth > 0 && _stringcount > maxwidth)
{
stringbuilder _builderstring = new stringbuilder(data);
int _breakcount = _builderstring.length / maxwidth;
for (int i = 0; i < _breakcount; i++)
{
int _insertposition = i * maxwidth;
if (_insertposition != 0)
{
int _offset = (i - 1) * 2;//(\r\n)
_builderstring.insert(_insertposition + _offset, environment.newline);
}
}
return _builderstring.tostring();
}
else
{
return data;
}
}
#endregion
测试如下:
复制代码 代码如下:
[testmethod()]
public void wraptexttest()
{
string _actual = stringhelper.wraptext("yanzhiwei", 3);
assert.areequal<string>(@"yan
zhi
wei", _actual);
}
public void wraptexttest()
{
string _actual = stringhelper.wraptext("yanzhiwei", 3);
assert.areequal<string>(@"yan
zhi
wei", _actual);
}
运行结果如下图所示:
希望本文所述对大家的c#程序设计有所帮助。