佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 1096|回复: 11

C# 问题请教。。。

[复制链接]
发表于 13-3-2017 10:24 PM | 显示全部楼层 |阅读模式
本帖最后由 polygon0121 于 13-3-2017 02:25 PM 编辑

大家好,本人第一次来这里发帖,其实是有些问题想请教大家的。那个~最近我要做C#program是关于ATM 的program。于是有几个问题想问问。。。
1)请问要如何edit在text file里的某行句子,例如我只是想edit text file里的第二行句子而已,其他保持不变。直接点就是如何update user的balance wwww
2)如何读取text file里不同行的句子。。。就是说好像这个人的密码是123就要读取第5行的资料然后显示出来,然后密码是567就要读取第9行的资料然后显示出来。
3)创建了saving account和checking account的class却不知道怎么用。。。平时都是用来create new user和save user的。。。但这次要用到text file就不太清楚要怎么办了。。。

P.S.如果我表达的不是很清楚真的很抱歉,因为室友在吵。。。和我不太会表达出我的问题,谢谢解答(((90度鞠躬

回复

使用道具 举报


ADVERTISEMENT

发表于 14-3-2017 08:34 AM | 显示全部楼层
不能用database咩? 一定要text file?

回复

使用道具 举报

发表于 14-3-2017 09:47 AM | 显示全部楼层
Jason929 发表于 14-3-2017 08:34 AM
不能用database咩? 一定要text file?

看得出是大学basic c#的assignment, 我不懂你的textfile的structure是怎样不过我建议你一行是一个customer的资料然后用special character来分开比如说 CustomerName#AccountNumber#AccountType#Balance然后用split('#')来store进一个list用你做的class就是List<SavingAccount>..read跟write textfile是用streamreader跟streamwriter..你不可以只是update其中一行..每次update完成了都要把textfile重新write过...基本就是这样了整个concept已经跟你讲了其他的你自己研究研究..多用google比你来cari问人好
回复

使用道具 举报

发表于 14-3-2017 10:32 AM | 显示全部楼层
qwqwqwqw 发表于 14-3-2017 09:47 AM
看得出是大学basic c#的assignment, 我不懂你的textfile的structure是怎样不过我建议你一行是一个customer的资料然后用special character来分开比如说 CustomerName#AccountNumber#AccountType#Balance然后用split ...

你回錯人了ar

回复

使用道具 举报

发表于 14-3-2017 11:01 PM | 显示全部楼层
1.你说了“第二行句子”,就是说你txt里的data是用一行一行来分开的...
你不要麻烦的话就善用 StreamReader/Writer 里面的Readline/Writeline
或者你也可以split开一行一行
你不能让“其他保持不变”,但是你可以“让其他看起来保持不变”...他背后的theory就是要Read 出来然后 Rewrite他
2.用for loop + streamReader里面的Readline
3.你至少要给我们看下你在里面写了什么 我们才能帮到你啊
回复

使用道具 举报

发表于 16-3-2017 03:29 PM | 显示全部楼层
Terus 用Serialization吧. Kaudim.
回复

使用道具 举报

Follow Us
发表于 21-3-2017 09:03 AM | 显示全部楼层
希望你能清楚一点解释你的requirements 和 prerequisite。看楼主你解释的只是一个平台来update text file content 罢了。有几项 functions 可能你需要了解一下, 照你的解释每次update需要重新loop text file content 直到找到相应的数据才update吗? 如果是单纯单机 Atm program我非常建议,楼上大大的提议用serialization (linq object)来做比较好,你可以无限次更改而无需重写text file(可以在exit program时update text file会比较省时间)。那么读取(program 开始时)和更新(program 结束时/ function trigger), 那就不需要一直重复更新。

楼上大大也有说道数据库,能用的话就简单许多了。
回复

使用道具 举报

 楼主| 发表于 26-3-2017 03:43 AM | 显示全部楼层
Jason929 发表于 14-3-2017 12:34 AM
不能用database咩? 一定要text file?

assignment里说要用textfile啊,我能怎样T^T
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 26-3-2017 03:46 AM | 显示全部楼层
publicUser 发表于 21-3-2017 01:03 AM
希望你能清楚一点解释你的requirements 和 prerequisite。看楼主你解释的只是一个平台来update text file content 罢了。有几项 functions 可能你需要了解一下, 照你的解释每次update需要重新loop text file conten ...

就是database不能用才麻烦。。。这是大学的assignment来的读取和加资料进textfile我会,可是就是不太明白update那一part...
回复

使用道具 举报

 楼主| 发表于 26-3-2017 03:52 AM | 显示全部楼层
qwqwqwqw 发表于 14-3-2017 01:47 AM
看得出是大学basic c#的assignment, 我不懂你的textfile的structure是怎样不过我建议你一行是一个customer的资料然后用special character来分开比如说 CustomerName#AccountNumber#AccountType#Balance然后用split ...

就是google了不太懂才来问人的。。。虽然也能consult lecturer,可是要等很久就跑来这里问了。。。(每次update完成了都要把textfile重新write过)就是这点我不明白,example我的textfile是:
name      Acc_num  acc_type           balance
Polygon#123456#Saving Account#1000
Hexagon#56987#Saving Account#5000

好像比如现在hexagon withdraw了500然后要怎样update 5000变4500???可以给个sample comand看看吗?就是这里我一直搞不懂,如果你说要reqrite整个textfile的话具体又是怎样呢???

回复

使用道具 举报

 楼主| 发表于 26-3-2017 04:14 AM 来自手机 | 显示全部楼层
hongzaii92 发表于 14-3-2017 03:01 PM
1.你说了“第二行句子”,就是说你txt里的data是用一行一行来分开的...
你不要麻烦的话就善用 StreamReader/Writer 里面的Readline/Writeline
或者你也可以split开一行一行
你不能让“其他保持不变”,但是你可以 ...

因为现在老师要我们用window form来做了,刚解决user login的问题,现在pass给队友做,迟点我开多一个post来显示我的code吧…我其实就是不会,算了那个value出来如何replace在text file里旧的value…
回复

使用道具 举报

发表于 26-3-2017 05:22 AM | 显示全部楼层
old school就用split, array.熟悉database的話,用oledb.csv也是一種database.
http://stackoverflow.com/questio ... oledb-using-c-sharp
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 24-4-2024 08:04 PM , Processed in 0.059471 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表