zoukankan
html css js c++ java
获得定长字符串
C#中的字符串是Unicode编码,length是Unicode的Char的个数。所以,假如一个字符串中中英文混杂,又想获得一个固定宽度的字符串,就比较麻烦。单纯转换成字节再截取难免会碰到半个汉字的问题。
下面实现了这样的功能,返回固定字节长度的字符串,如果发生截断,后面补充2个或者3个“.”,根据截断点的位置决定。
/**/
///
<summary>
///
返回定长的字符串,如果发生截取,在后面补充两个或三个"."
///
Author:jetz
///
</summary>
///
<param name="ByteLen"></param>
///
<param name="str"></param>
///
<returns></returns>
static
public
string
GetFixupString(
int
ByteLen,
string
str)
{
if
(System.Text.Encoding.Default.GetByteCount(str)
<=
ByteLen)
return
str;
for
(
int
i
=
str.Length
-
1
;i
>
0
;i
--
)
{
int
j
=
System.Text.Encoding.Default.GetByteCount(str.Substring(
0
,i));
//
字节宽度
if
(j
<=
ByteLen
-
2
)
//
保证能显示".."
{
return
str.Substring(
0
,i)
+
new
string
(
'
.
'
,ByteLen
-
j);
}
}
return
""
;
}
查看全文
相关阅读:
Linux架构
Python标准库09 当前进程信息 (os包)
Linux从程序到进程
Python标准库04 文件管理 (部分os包,shutil包)
Python标准库10 多进程初步 (multiprocessing包)
Python标准库06 子进程 (subprocess包)
绘图: matplotlib Basemap简介
树莓派与Linux
绘图: Python matplotlib简介
Linux进程间通信
原文地址:https://www.cnblogs.com/jetz/p/279732.html
最新文章
PowerTip of the DayAccessing Object Properties
VS2010 Beta1下Silverlight3试用手记
SSIS中导入Excel数据到数据库的一个常见小问题
BI笔记之增量方式处理多维数据集
BI笔记之BI通用流程
Silverlight 3关于技术以外的一些个人预测
Visifire 2.2.3 beta 5中CandleStick的一个Bug
aspnetx的BI随笔汇总
Silverlight3初用手记
silverlight for arcgis开发笔记
热门文章
浏览器大问题
Office 2010 beta直接下载地址
Silverlight,MOSS,BI招聘信息
BI项目记
powershell4ssas笔记
PowerTip of the Day Filtering Day of Week
我的第一个视频剪辑
求序列最大/最小值出现的一个疏忽
PowerTip of the DayChanging File/Folder Creation Date
Linux进程基础
Copyright © 2011-2022 走看看