C_Sharp 板


LINE

有一个txt纯文字档,里面就是塞满了1和0,像是这样 1 0 1 0 0 0 0 0 0 0 1 0 0 1 1 0 0 0 0 0 1 1 1 1 0 想要把这些数值存成二维bool阵列, 现在我的做法是一行一行读,然後再用个回圈读这行里面的字元,像是这样 for (int i = 0; i < line.Length; i++) { if (line[i] == 1) //存入一个true else if (line[i] == 0) //存入一个false } //下一行... 虽然作法可行,但觉得效率很差, C#不像C++可以让数值直接强制转换成bool,需要过一个if else的判定, 觉得应该就是这部分拖慢了(不知道我有没有理解错误) 不知道有没有更好的做法? 我的txt非常单纯,就是1和0而已, 中间用空格分开,每行成员数量固定,行数则不一定(应该没差吧?) --
1F:推 timmysas: 风中白头翁头白中风<--台大动物研究所高材生
2F:推 suhaw: 床上女子和子女上床<--台大家庭研究所高材生
3F:推 MyCuteTaitai:景美衣内有内衣美景<--台大城乡研究所高材生
4F:推 starseven: 中国山中有中山国中<--台大教育研究所高材生
5F:→ ruruking: 较南韩全国全韩南叫<--台大外交研究所高材生
6F:推 AllenbeaR: 妈祖你干麻干你祖妈<--台大宗教研究所退学生
--



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 1.163.68.144 ※ 编辑: stu87616 来自: 1.163.68.144 (11/29 02:05)
7F:→ ssccg:所以你是要问什麽? 跟C比的确多一步因为就是不同type 11/29 03:47
8F:→ ssccg:但那是一定要的,也不是那边最慢,准备空间、读档、切字串 11/29 03:49
9F:→ ssccg:这些都还比较花时间... 真要说的话你的else後面条件是多的 11/29 03:53
10F:→ optimist9266:我觉得完全是你判断式的问题... http://ppt.cc/P0Qo 11/29 11:41
11F:→ optimist9266:我好奇input文件为什麽要用纯文字,存成byte不是更 11/29 11:42
12F:→ optimist9266:快吗?而且档案也小一半 11/29 11:42
13F:→ optimist9266:http://ppt.cc/xwrW 这张才对,上一张1打成0 11/29 11:45
14F:→ optimist9266:要更快的话,我记得可以用unsafe直接把值写入记忆体 11/29 11:48
感谢上位两位版友的指点,现在专案内的文件跑起来都没问题了, 不过换卡在读取文件的内容上,我不知道是不是编码哪里要设定之类的, 这方面一直蛮苦手的,我目前是这样写: BinaryReader br; FileStream fs; fs = File.OpenRead("FileName.txt"); int leng = (int)fs.Length; bool[] data = new bool[leng]; for (int i = 0; i < leng; i++) data[i] = br.ReadByte() == 1; 基本上内容都是翻找网路资料和MSDN拼起来的ˊ_>ˋ 现在有一个问题是br.ReadByte()读到的资料1会是49,0是48,也就是ANSI码, 而不是1和0,不知道是不是哪边弄错了,虽然问题好像不大,把判定的1改成49就好。 另外空格会是32,换行则是两格(反正都是ANSI), 虽然应该也是可以写判定式去忽略掉,不过感觉我这样的做法不是正解。 恳请高手解惑。 ※ 编辑: stu87616 来自: 120.125.11.201 (11/29 14:07)
15F:→ optimist9266:我是说input文件当初为什麽不直接把资料用byte方式存 11/29 14:22
16F:→ optimist9266:49跟48是因为你文件内部存的是ANSI的编码 11/29 14:23
喔喔,我懂了,因为来源档不是我负责处理的, 所以我现在该再用另一个小程式把这个来源档转成纯Byte吗? 那这样的话应该就做不到换行了对吧? ※ 编辑: stu87616 来自: 120.125.11.201 (11/29 14:27)







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:WOW站内搜寻

TOP