| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 680 人关注过本帖
标题:求解文件读写问题
只看楼主 加入收藏
mirine
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-1-28
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
求解文件读写问题
目前开发中,碰到个问题,如何实现,只写一次(为了降低内存消耗)的情况下修改原文本文件多个参数值,举个例子吧:下面是配置文件的一部分

#服务器IP
Service=192.168.0.50

#服务器端口
ServerPort=6128

#TCP/IP连接是否指定本地端口
BindLocalPort=0

#呼出主窗口的快捷键。可以用'+'定义组合键(KeyHook 1.4以上支持)。7a - F11, 10 - Shift, 11 - Ctrl, 12 - Alt。
CallWinKey=70

#操作的快捷键。7b - F12
DefinedKey=7b

#客户端上的超时时间
Timeout=50

请问各位老大,这该如何实现呢。稍微具体点, 我是新手。
搜索更多相关主题的帖子: 服务器 文本文件 配置文件 快捷键 
2013-01-28 11:21
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:7 
文本是放在硬盘上。你说写一次减少内存,这是不是一个错误呢?最多说是减少I/O操作而已。
修改文本必须重写覆盖掉。
所以这个是没有办法。
你全部在内存中修改掉,然后一次写到硬盘就可以了。
但这样耗内存比较多(如果数据比较多的话)

很多次写的会减少内存消耗。

我觉得你说应该考虑是大量的数据读写吧。少量数据基本不会考虑内存的问题。效率也没有好讨论的。

我觉得你考虑程序的处理效率,因为I/O操作是最大瓶颈,你应该是说I/O问题而不是内存问题
这个论坛我很少逛。如果还有问题,我基本看不到。
通过你表达意思,我只能这样跟你说。

用心做一件事情就这么简单
2013-01-28 23:26
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:7 
有解释的功夫还不如给你段代码来的快。说一个你的具体要求。

重剑无锋,大巧不工
2013-01-29 00:26
mirine
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-1-28
收藏
得分:0 
回复 3楼 beyondyf
谢谢斑竹,下班回去没网,刚看到。是这样的。就如上面的一个文本配置文件。是一个.ini文件。我现在要做的是,从我开发的软件的控件框用
GetDlgItemText()函数获取参数值,由于有可能已经被用户修改需要保存到.ini文件里面。就如上面的
#服务器IP
Service=192.168.0.50

#服务器端口
ServerPort=6128

#TCP/IP连接是否指定本地端口
BindLocalPort=0

#呼出主窗口的快捷键。可以用'+'定义组合键(KeyHook 1.4以上支持)。7a - F11, 10 - Shift, 11 - Ctrl, 12 - Alt。
CallWinKey=70

#操作的快捷键。7b - F12
DefinedKey=7b

#客户端上的超时时间
Timeout=50

这些参数名字的数值就是要重新被GetDlgItemText()中获得的参数覆盖的。我现在的想法是建立一个临时文件,用fget()一行一行读取,如果是注释行就直接复制到临时文件,如果是参数行就把“=”后的数字用GetDlgItemText()获得的参数值覆盖,然后复制到临时文件。但是我现在比较困惑的是不知道怎么去判断这些参数名字。因为比较多。如果版主大哥有空的话就帮我写个例程吧。。。多谢啦
2013-01-29 08:55
快速回复:求解文件读写问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016475 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved