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
""
;
}
查看全文
相关阅读:
HDU1205 吃糖果【水题】
HDU2568 前进【水题】
架构图初体验
五层架构
文件系统权限设计涉及范畴
微服务
领域驱动设计
容器技术Docker
架构总结
仓储模式的简单理解
原文地址:https://www.cnblogs.com/jetz/p/279732.html
最新文章
ZOJ3876 May Day Holiday【日期计算】
UVA146 POJ1146 ID Codes【全排列】
UVA10098 Generating Fast【全排列】
POJ1182 食物链【并查集】
HDU1977 Consecutive sum II【数学计算+水题】
POJ2431 Expedition【贪心+优先队列】
HDU2058 The sum problem【数学计算+枚举】
HDU1868 Consecutive sum【数学计算+枚举】
HDU2629 Identity Card【MAP+水题】
HDU1587 Flowers【水题】
热门文章
HDU1073 Online Judge【输入输出+字符串】
HDU5670 Machine【进制】
UVALive4167 HDU2700 Parity【水题】
UVALive2857 POJ2578 HDU1037 ZOJ2186 Keep on Truckin'【水题】
HDU1219 AC Me【输入输出】
HDU2520 我是菜鸟,我怕谁【水题】
HDU2078 复习时间【水题】
HDU2537 8球胜负【水题】
HDU2521 反素数【因子数量+打表】
HDU2547 无剑无我【水题】
Copyright © 2011-2022 走看看