求教各位

hqb782 2012-06-25 11:04:17
有一个txt文件,里面存储这多行的数字,比如:
000000000000111010010101010000000000000000
111010101000111100000000000000000110010000
000010101010101010010000000000000000000000
100001010100101000000000110000000010001001
110010101010000000000000000000000000000000
按64个字符算成一组, 输出每组中字符为1的下标。 这个下标是每组内的下标,即0-63且衔接也已经完成,现在我要输出的格式中加入判断,就是碰到每组第一个1的时候输出start,最后一个1的时候输出end,如下所示:
.......
M[8] start X[8] P[8]
M[11] P[8] X[11] P[11]
M[12] P[11] X[12] P[12]
......
M[45] P[40] X[45] end
这样要这么解决?大家帮帮忙

...全文
102 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
__天涯寻梦 2012-06-25
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
引用 3 楼 的回复:
原先那段代码
while ((index = item.IndexOf('1', index + 1)) >= 0)
这行换成
while ((index = str.IndexOf('1', index + 1)) >= 0)

不行,我试过了!!!
var sidxstr = idxs[0].ToString();这句报错了......索引超出范围。必须为……
[/Quote]
这是因为有一块一个 1都没有,后来我在代码中加了判断
hqb782 2012-06-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
M X P 是什么
[/Quote]
M X P 只是输出的字母!
hqb782 2012-06-25
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
CSDN 的私信功能出问题了,楼主我发了私信给你,你看下
[/Quote]
确实不行,我还以为是我网速不行!!!
hqb782 2012-06-25
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
原先那段代码
while ((index = item.IndexOf('1', index + 1)) >= 0)
这行换成
while ((index = str.IndexOf('1', index + 1)) >= 0)
[/Quote]
不行,我试过了!!!
var sidxstr = idxs[0].ToString();这句报错了......索引超出范围。必须为非负值并小于集合大小。
__天涯寻梦 2012-06-25
  • 打赏
  • 举报
回复
原先那段代码
while ((index = item.IndexOf('1', index + 1)) >= 0)
这行换成
while ((index = str.IndexOf('1', index + 1)) >= 0)
__天涯寻梦 2012-06-25
  • 打赏
  • 举报
回复
CSDN 的私信功能出问题了,楼主我发了私信给你,你看下
q107770540 2012-06-25
  • 打赏
  • 举报
回复
M X P 是什么
hqb782 2012-06-25
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
引用 4 楼 的回复:
引用 3 楼 的回复:
原先那段代码
while ((index = item.IndexOf('1', index + 1)) >= 0)
这行换成
while ((index = str.IndexOf('1', index + 1)) >= 0)

不行,我试过了!!!
var sidxstr = idxs[0].ToString();这句报错了...……
[/Quote]
谢谢知道了!!

111,125

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧