在C#中,如何将一个字符串按照一定的数量存放在数组中
例如有一字符串如stringstr=“abcdefg12345rehuhu3243983748”;想把他们每14个字符存在一个数组中中,该怎样定义数组,怎样存入呢?谢谢帮...
例如有一字符串如string str=“abcdefg12345rehuhu3243983748”;
想把他们每14个字符存在一个数组中中,该怎样定义数组,怎样存入呢?谢谢帮忙 展开
想把他们每14个字符存在一个数组中中,该怎样定义数组,怎样存入呢?谢谢帮忙 展开
3个回答
展开全部
string 类型不需要使用数组,可直接用 string[x]来读取。
如果嫌弃麻烦,可以自定义一个函数。来获取指定位置的字符串。
例如:
//index:索引,从0开始
//str:要截取的目标字符串
public static string GetMyStr(int index, string str)
{
int ilen = str.length();
if(ilen<14)
retun str;
else
{
string ret = "";
int ibegin = index*14;
ret = ret.Substring(ibegin, 14);
return ret;
}
}
展开全部
char[] arr = str.ToArray();
实际上如果只是读取也不用转换,上面的str本身就可以当做数组用str[0]、str[1]这种来访问不同的字符。
追问
请问有没有一种可以像C语言那样的方法,存完后可以是arr[1]="adsadadsss",arr[2]="dsdasddsds"....这样的格式呢
追答
刚没注意,看错了,应该是
string[] arr=System.Text.RegularExpressions.Regex.Split(str, @"(?<=\G.{14})(?!$)");
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
string str=“abcdefg12345rehuhu3243983748”;
主要要用到Linq的两个方法Skip(int count) 跳过指定数量的数据,放回剩下的序列
Take(int count)放回指定数量的序列
追问
使用Substring其实也是可以的,我想知道如何才能存在一个数组里面,例如是arr[1]="sdsds";arr[2]="adada",......这样的格式呢
追答
String[] fill(string)
{
List<String> list =new List<String>();
//TODO
//For or other
list.add(string1);
list.add(string2);
return list.ToArray();
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询