内容包含
1.将一个字符串按照分隔符转换成List
2.将一个字符串按照分隔符转换为数组
3.把List按照分隔符组装成string
4.把List按照分隔符得到数组列表以逗号分割的字符串
5.将Dictionary<int,int>转换成数组列表以逗号分隔开的字符串
6.删除字符串最后结尾的一个逗号
7.删除字符串最后结尾的指定字符后的字符
8.将一个字符串转换成全角
9.将一个字符串转换成半角
10.将一个字符串按照指定分隔符装成List去除重复
11.截取指定长度字符串
#region 将一个字符串按照分隔符转换成List
///
/// 将一个字符串按照分隔符转换成List
///
/// 源字符串
/// 分隔符
/// 是否转换为小写
///
public static List GetStrArray(string str, char speater, bool toLower)
{
List list = new List();
string[] arr = str.Split(speater);
foreach (string item in arr)
{
if (!string.IsNullOrEmpty(item) && item != speater.ToString())
{
string strVal = item;
if (toLower)
{
strVal = item.ToLower();
}
list.Add(strVal);
}
}
return list;
}
#endregion
#region 将一个字符串按照分隔符转换成数组
///
/// 将一个字符串按照分隔符转换成数组
///
/// 源字符串
/// 分隔符
///
public static void GetStrArray2(string str, char speater, bool toLower)
{
string[] arr = new string[5];
string[] ss = str.Split(speater);
for (int i = 0; i < arr.Length; i++)
{
if (!string.IsNullOrEmpty(arr[i]) && arr[i] != speater.ToString())
{
string strVal = arr[i];
if (toLower)
{
strVal = arr[i].ToLower();
}
arr[i] = strVal;
}
}
}
#endregion
#region 把List按照分隔符组装成string
/// <summary>
/// 把List按照分隔符组装成string
/// </summary>
/// <param name="list"></param>
/// <param name="speater"></param>
/// <returns></returns>
public static string GetArrayStr(List<string> list, string speater)
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < list.Count; i++)
{
if (i == list.Count - 1)
{
sb.Append(list[i]);
}
else
{
sb.Append(list[i]);
sb.Append(speater);
}
}
return sb.ToString();
}
#endregion
#region 把List按照分隔符得到数组列表以逗号分隔符的字符
///
/// 把List按照分隔符得到数组列表以逗号分隔符的字符
///
///
///
public static string GetArrayStr(List list)
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < list.Count; i++)
{
if (i == list.Count - 1)
{
sb.Append(list[i].ToString());
}
else
{
sb.Append(list[i]);
sb.Append(",");
}
}
return sb.ToString();
}
#endregion
#region 将Dictionary<int,int>转换成数组列表以逗号分隔的字符串
///
/// 将Dictionary<int,int>转换成数组列表以逗号分隔的字符串
///
///
///
public static string GetArrayValueStr(Dictionary<int, int> list)
{
StringBuilder sb = new StringBuilder();
foreach (KeyValuePair<int, int> item in list)
{
sb.Append(item.Value + “,”);
}
if (list.Count > 0)
{
return sb.ToString();
}
else
{
return “”;
}
}
#endregion
#region 删除字符串最后结尾的一个逗号
///
/// 删除字符串最后结尾的一个逗号
///
///
///
public static string DelLastComma(string str)
{
return str.Substring(0, str.LastIndexOf(","));
}
#endregion
#region 删除字符串最后结尾的指定字符后的字符
///
/// 删除字符串最后结尾的指定字符后的字符
///
///
///
///
public static string DelLastChar(string str, string strchar)
{
return str.Substring(0, str.LastIndexOf(strchar));
}
#endregion
#region 将一个字符串转换成全角[不懂全角和半角的含有,可以自行百度]
///
/// 将一个字符串转换成全角[不懂全角和半角的含有,可以自行百度]
///
///
///
public static string ToSBC(string input)
{
//半角转全角
char[] c = input.ToCharArray();
for (int i = 0; i < c.Length; i++)
{
if (c[i] == 32)
{
c[i] = (char)12288;
continue;
}
if (c[i] < 127)
{
c[i] = (char)(c[i] + 65248);
}
}
return new string(c);
}
#endregion
#region 将一个字符串转换成半角
///
/// 将一个字符串转换成半角
///
///
///
public static string ToDBC(string input)
{
char[] c = input.ToCharArray();
for (int i = 0; i < c.Length; i++)
{
if (c[i] == 12288)
{
c[i] = (char)32;
continue;
}
if (c[i] > 65280 && c[i] < 65375)
{
c[i] = (char)(c[i] - 65248);
}
}
return new string©;
}
#endregion
#region 将一个字符串按照指定分隔符装哼List去除重复
///
/// 将一个字符串按照指定分隔符装哼List去除重复
///
///
///
///
public static List GetSubStringList(string o_str, char sepeater)
{
List list = new List();
string[] arr = o_str.Split(sepeater);
foreach (string item in arr)
{
if (!string.IsNullOrEmpty(item) && item != sepeater.ToString())
{
list.Add(item);
}
}
return list;
}
#endregion
region 截取指定长度字符串
/// <summary>
/// 截取指定长度字符串
/// </summary>
/// <param name="str">起始字符</param>
/// <param name="len">长度</param>
/// <returns></returns>
public static string SubString(string str, int len)
{
string result = string.Empty;//返回的结果
if (string.IsNullOrEmpty(str))
{
return result;
}
int byteLen = System.Text.Encoding.Default.GetByteCount(str);
//单字节字符长度
int charLen = str.Length;
//把字符平等对待时的字符串长度
int byteCount = 0;
//记录读取进度
int pos = 0;
//记录截取位置
if (byteLen > len)
{
for (int i = 0; i < charLen; i++)
{
if (Convert.ToInt32(str.ToCharArray()[i]) > 255)
{
//按中文字符计数+2
byteCount += 2;
}
else
{
//按英文字符计数+1;
byteCount += 1;
}
if (byteCount > len)
{
//超出时只记下上一个有效位置
pos = i;
break;
}
else if (byteCount == len)
{
pos = i + 1;
break;
}
}
if (pos >= 0)
{
result = str.Substring(0, pos);
}
}
else
{
result = str;
}
return result;
}
#endregion