CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

土问一个字符串的问题,在线等

楼主zzpy(左岸)2005-08-03 08:49:01 在 .NET技术 / C# 提问

有这样一个string:"522-528",如何把它拆成"522","523","524"..."528"七个string?  
  类似的有"613-683","134-158"等等. 问题点数:50、回复次数:15Top

1 楼ffansky(ffansky)回复于 2005-08-03 08:52:00 得分 5

str1   =   str.split(0,   3);  
  str2   =   str.split(4,   3);Top

2 楼zzpy(左岸)回复于 2005-08-03 08:54:57 得分 0

不是要拆成两个.这个字符串的前3位和末3位是两个整数,要列举出来这两个整数之间的所有数.Top

3 楼ffansky(ffansky)回复于 2005-08-03 08:55:56 得分 0

说错了  
   
  str1   =   str.SubString(0,   3);  
  str2   =   str.SubString(4,   3);  
  str3   =   str.SubString(8,   3);Top

4 楼ffansky(ffansky)回复于 2005-08-03 08:58:14 得分 0

都是三位的吗Top

5 楼3tzjq(永不言弃)回复于 2005-08-03 09:01:18 得分 35

string   flag   =   "522-528";  
  string[]   split   =   flag.Split('-');  
   
  int   v1   =   Convert.ToInt32(split[0]);  
  int   v2   =   Convert.ToInt32(split[1]);  
   
  int   gap   =   v2   -   v1;  
  int[]   values   =   new   int[gap];  
  for(int   i   =   0;   i   <   gap;   i++)    
  {  
      values[i]   =   v1   +   i;//得到间隔数  
  }Top

6 楼justin_chang(加油吧!)回复于 2005-08-03 09:02:18 得分 10

 
  string   str="522-528-123-456-789-256""  
  string[]   cArray;    
  cArray=a.Split(',');  
  foreach(string   i   in     cArray)  
  {  
    Response.Write(i);         //cArray[0]="522",cArray[1]="528",......cArray[5]="256"  
    Response.Write("<br>");  
  }Top

7 楼zzpy(左岸)回复于 2005-08-03 09:02:31 得分 0

汗,可能我没说明白,字符串的length都是7,"522-528",能取出来的只有"522"和"528",其实我是想知道怎么把"522","528"这两个string类型变成int,然后就能列举出来这两个int之间所有的整数了.Top

8 楼3tzjq(永不言弃)回复于 2005-08-03 09:04:52 得分 0

values[i]   =   v1   +   i;//得到间隔数  
  应改为:  
  values[i]   =   v1   +   i   +   1;//得到间隔数  
   
  flag   可以任何有效间隔字符串  
  Top

9 楼qsoo(求 索)回复于 2005-08-03 09:04:56 得分 0

先用substring取前面的数523   然后取后面的数528  
  接着for循环   然后取出所有的数  
  将"528"变成整型的方法Convert.ToInt32("528")Top

10 楼liuyemao_caoshan(品轩)回复于 2005-08-03 09:06:19 得分 0

3tzjq(永不言弃)   的是正解Top

11 楼abiho(迷路的打工者(只有不会做的程序员,没有不讲道理的客户))回复于 2005-08-03 09:06:26 得分 0

3tzjq(永不言弃)   符合要求Top

12 楼xwdd129(高手就是:不出手)回复于 2005-08-03 09:06:29 得分 0

先拆分成两个字符串,然后转换成两个整数,再循环加1取出它们之间的数不就行了Top

13 楼ffansky(ffansky)回复于 2005-08-03 09:08:05 得分 0

int   n1   =   Convert.ToInt32(str.SubString(0,   3));  
  int   n2   =   Convert.ToInt32(str.SubString(4,   3));  
  for(i   =   n1;   i   <=   n2;   i++)  
  {  
  Console.WriteLine   ("{0}",i);          
  }  
  Top

14 楼justin_chang(加油吧!)回复于 2005-08-03 09:08:20 得分 0

抱歉,刚才理解错了意思  
   
   
  string   str="522-528";  
  string[]   cArray;    
  ArrayList   cArrayList=new   ArrayList();  
   
  cArray=str.Split('-');  
   
  int   iSTR=Convert.ToInt32(cArray[0]);  
  int   iEND=Convert.ToInt32(cArray[1]);  
   
  for(int   i=iSTR;i<=iEND;i++)  
  {  
  cArrayList.Add(iSTR);  
  Response.Write(i);         //cArray[0]="522",cArray[1]="528",......cArray[5]="256"  
  Response.Write("<br>");  
  }  
  Top

15 楼zzpy(左岸)回复于 2005-08-03 09:59:07 得分 0

恩,忘了Convert.ToInt32,土了~谢各位Top

相关问题

  • delphi 字符串问题(在线)//
  • 字符串问题,在线等
  • 字符串送分问题!!!在线等
  • 过滤字符串问题,在线等。。。。。
  • 字符串的小问题!!!在线等!!!
  • 在线等,字符串问题,简单
  • 字符串问题,在线等...
  • 字符串问题,高分在线等
  • 字符串的问题(在线等)
  • 字符串问题

关键词

  • 间隔
  • 字符串
  • toint32
  • 整数
  • split
  • 取出
  • convert
  • substring
  • str
  • flag

得分解答快速导航

  • 帖主:zzpy
  • ffansky
  • 3tzjq
  • justin_chang

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo