标题:读写文件的问题
只看楼主
lixang
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2006-7-15
 问题点数:0 回复次数:6 
读写文件的问题

这是我的旧帖,好几个月了我还没解决这个问题!:故而再次将其贴出:希望大家给点指点!2006。12。12
大家请看下面这段话:
下面这段话有好个句子(见到一个句号就是一句话),(他们没有格式,很混乱)

(假定下面这段话在C:\aaa.txt中)
看了上面的直方图,大家也许会有一个疑问,看起来调整前红色分布在暗调区域较多。那为什么图像中暗部不会偏红色呢。原因很简单,红色直方图在暗调区域较多代表的是大部分的红色只发出很微弱的光。换句话说就是红色光在画面中的成分很少。将直方图转为亮度色阶就明白了。如下左图,在红色分布较密集的地区几乎没有亮度。

如何用C++将上面这段话,以下面的方式写到C:\bbb.txt中呢?

1 看了上面的直方图,大家也许会有一个疑问,看起来调整前红色分布在暗调区域较多。
2 那为什么图像中暗部不会偏红色呢。
3 原因很简单,红色直方图在暗调区域较多代表的是大部分的红色只发出很微弱的光。
4 换句话说就是红色光在画面中的成分很少。将直方图转为亮度色阶就明白了。
5 如下左图,在红色分布较密集的地区几乎没有亮度。

也就是每行是一句话。


[此贴子已经被作者于2006-12-12 18:00:40编辑过]

搜索更多相关主题的帖子: STRONG 文件 color 疑问 
2006-11-12 22:08
kai
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:52
帖 子:3450
专家分:59
注 册:2004-4-25
得分:0 
你的问题到底是什么? 好像你说的和你的标题没有什么相关性。

自由,民主,平等,博爱,进步.
中华民国,我的祖国,中华民国万岁!中华民国加油!
本人自愿加入中国国民党,为人的自由性,独立性和平等性而奋斗!
2006-11-12 22:33
lixang
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2006-7-15
得分:0 

将原来很混乱的文本aaa.txt中的句子,整理一下:
然后将整理好色句子一句一行的写到bbb.txt中:
我在1楼说的很清楚!请大家帮忙!

[此贴子已经被作者于2006-11-13 10:19:25编辑过]

2006-11-12 22:37
wfpb
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:2188
专家分:0
注 册:2006-4-2
得分:0 

cin.getline(str,100,'。');
每次读到‘。’结束


[glow=255,red,2]wfpb的部落格[/glow] 学习成为生活的重要组成部分!
2006-11-13 14:33
lixang
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2006-7-15
得分:0 
那么谁能具体点呢?
2006-11-14 18:46
lixang
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2006-7-15
得分:0 
以下是引用wfpb在2006-11-13 14:33:19的发言:

cin.getline(str,100,'。');
每次读到‘。’结束

表面看起来是正确的,但实际上不能解决问题,因为句号中文‘。’占有两个字节,
句号但英文‘.’仅占有一个字节
cin.getline(str,100,'。');
//C++第三个参数规定仅为1个字节

所以要解决1楼的问题cin.getline实际上是不行的,那么请大家给出解决的其他方案!
2006-12-12 13:44
leoaioria
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2005-4-3
得分:0 
你的第一帖和最后一帖时隔一个月了,学习精神很值得人感动啊
我的方法不知可不可以:
------------------先知道如何从文本里找出"。"字符-------------------
首先,得知道如何从文本中判断出“。”字符
“。”是中文字符,站2字节(16位),而且!!!每个字节的第一个位是1(中文字符的表示规律是每个字节的第一个字节是1),也就是说这两个字节各自转换成int型后,会是两个负数。
#include <string>
#include <iostream>
using namespace std;

main()
{ string a;
a="。";
cout<<a.at(0)<<a.at(1)<<endl; //此处a.at(0)意思为取a(string型)的第一个字节。
}
运行结果:
-95 -93 //注意,这里由于每台计算机的中文编码标准不同,值可能不一样
说明“。”字符的存储为-95 -93。这下应该知道如何从文本里判断字符“。”了吧,具体方法自己去编写吧
-----------------然后开始执行----------------------
(伪码)
FILE *fileopen1;
FILE *fileopen2;
fileopen1.open("a.txt");
fileopen2.open("b.txt");
......
然后从a文本里按字节读取数据,然后按字节写入b文本。在此字节写入b之前还要判断它是否是"。"的数据表示。
若是,只需在"。"符号写入b后紧接着写入一个换行符,(每行前的1,2,3....实现也简单,这里就不说了)
然后
fclose(fileopen1);
fclose(fileopen2);

我的表达很烂,但愿楼主你能看懂,能对你有所帮助


实在看不懂的话可以联系信箱 bendanly@163.com 大家相互学习

2006-12-26 23:20



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-102493-1-1.html




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

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