.net里一个英文跟一个中文都算一个字.搞得我的页面好不工整啊.

winner2050 2006-03-02 09:27:15
一些新闻标题太长,显示的时候就截短些,但遇到有英文的或者纯英文的就比汉字的短.
这样排版起来非常不工整.

怎么解决这个问题
...全文
86 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
swife 2006-03-02
  • 打赏
  • 举报
回复
mark
leftnetcn 2006-03-02
  • 打赏
  • 举报
回复
private int GetStringLen(string str)
{
int iLen = str.Length;
char[] caTmp = str.ToCharArray();
for (int i = 0 ; i < caTmp.Length ; i++)
{
if (caTmp[i] >= 0x7f)
{
iLen++;
}
}

return iLen;
}
Eddie005 2006-03-02
  • 打赏
  • 举报
回复
给你一个现成的按字节数截取的方法
public static string GetSubString(string mText,int byteCount)
{
if(byteCount < 1 ) return mText;

if(System.Text.Encoding.Default.GetByteCount(mText) <= byteCount)
{
return mText;
}
else
{
byte[] txtBytes = System.Text.Encoding.Default.GetBytes(mText);
byte[] newBytes = new byte[byteCount-6];

for(int i=0;i<byteCount-6;i++)
newBytes[i] = txtBytes[i];

return System.Text.Encoding.Default.GetString(newBytes) + "......";
}
}
Lukiya 2006-03-02
  • 打赏
  • 举报
回复
font-family: 宋体;
text-align: justify;
Eddie005 2006-03-02
  • 打赏
  • 举报
回复
可以字节数来截取,而不是长度~

System.Text.Encoding.Default.GetByteCount()计算字节数

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧