WebService开发的几个基本概念
webservice三要素:
SOAP
SOAP即简单对象访问协议(Simple Object Access Protocol),它是用于交换XML(标准通用标记语言下的一个子集)编码信息的轻量级协议。它有三个主要方面:XML-envelope为描述信息内容和如何处理内容定义了框架,将程序对象编码成为XML对象的规则,执行远程过程调用(RPC)的约定。SOAP可以运行在任何其他传输协议上。例如,你可以使用 SMTP,即因特网电子邮件协议来传递SOAP消息,这可是很有诱惑力的。在传输层之间的头是不同的,但XML有效负载保持相同。-vice
Web Service 希望实现不同的系统之间能够用“软件-软件对话”的方式相互调用,打破了软件应用、网站和各种设备之间的格格不入的状态,实现“基于Web无缝集成”的目标。
WSDL
Web Service描述语言WSDL 就是用机器能阅读的方式提供的一个正式描述文档而基于XML(标准通用标记语言下的一个子集)的语言,用于描述Web Service及其函数、参数和返回值。因为是基于XML的,所以WSDL既是机器可阅读的,又是人可阅读的。-c
UDDI
UDDI 的目的是为电子商务建立标准;UDDI是一套基于Web的、分布式的、为Web Service提供的、信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的Web Service注册,以使别的企业能够发现的访问协议的实现标准。-vice
c++中fopen函数读文件怎么用文件数据
本文分别简单讲述了如何利用C和C++库函数对文件的读写,涵盖了常用的文件操作函数。网上关于C/C++文件操作的介绍的博客很多,所以本文也大同小异,也主要是做一个备忘,不有每次都百度了。但本文重点在于几个库函数的运用,而不是从文件的属性或分类开始。
一、C文件操作:
C语言中,文件的操作都是通过一个FILE类型的文件指针进行,也就是说只有通过文件指针,才能调用相应的文件。FILE是一个由系统定义的结构体(定义在stdio.h中),可以存放文件的相关信息。
文件的打开(fopen函数)
文件的操作过程一般为:打开 =》 读/写 =》 关闭。
fopen函数的原型如下:
FILE* fopen(const char* filename, const char* mode);
函数调用就比较简单了:
FILE* fp;
fp = fopen(“file1.txt“, “r“);
如果打开成功,返回file1.txt文件的指针,如果打开失败,返回一个NULL指针,所以调用fopen()后我们需要检查fp的值才进行下一步操作。fopen()的第一个参数为文件名,第二个参数为文件打开方式,含义如下表:
说明: 1. 使用“r“时,如果文件不存在,则出错。
2. 使用“w“时,如果没有文件,则创建一个新文件。
3. 使用“a“时,如果希望向文件尾添加数据,则该文件必须存在,否则出错。
4. “r+“,“w+“,“a+“都是可以输入和输出数据,但必须遵守上述3点
5. 操作二进制文件时,加上“b“字符,且二进制文件对换行符不会进行转换,而文本文件会将换行符转换为回车和换行两个字符。
文件的关闭(fclose函数)
在使用完一个文件后,若不关闭则会造成系统资源泄漏。使用fclose()关闭文件即可,原型为 int fclose(FILE* fp)。使用:fclose(fp); flose()返回0时为顺利关闭文件,否则返回EOF(-1)。
文件的读写
1) fputc(), fgetc()分别为从文件流中写和读一个字符,原型分别如下:
写:int fputc(int c, FILE* fp); 读:int fgetc(FILE* fp); 失败时均返回EOF
2) fputs(), fgets()分别为从文件流中写和读一个字符串,原型分别如下:
写:int fputs(const char* str, FILE* fp); 例如: fputs(“I love this game!“, fp);
读:char* fgets(char* str, int n, FILE* fp); 从流中读取n-1个字符或读完一行,参数str用于接收读取的字符串。注意当读取一行时,不包括行尾的’\n’字符。
3) fseek() 一般用于二进制模式打开的文件中,功能是定位到流中指定的位置。原型如下:
int fseek(FILE* fp, lont offset, int whence); 参数offset是移动的字符数,whence是移动的基准,取值是:
SEEK_SET 0 //文件开头
SEEK_CUR 1 //当前读写的位置
SEEK_END 2 //文件尾部
4) fprintf(),fscanf()是将数据按格式输出输入到文件流中,用法类似printf()和scanf()。原型分别如下:
int fprintf(FILE* fp, const char* format, ...); 它与printf()不同的就是将数据写到了文件流中,而不是控制台罢了。
int fscanf(FILE* fp, cosnt char* format, ...); 从文件流中按格式读取,与scanf()不同的就是数据是从文件流中读取而已。
例如: fprintf(fp, “count=%d“, 5); fscanf(fp, “%d“, &x);
5) feof()是检测是否已到文件尾,是返回真,否则返回0,原型是 int feof(FILE* fp);
6) rewind() 则是把当前的读写位置回到文件开始,相当于 fseek(fp, 0L, SEEK_SET); 原型: void rewind(FILE* fp);
7) remove() 删除文件,原型: int remove(const char* filename); 参数为要删除的文件名,成功则返回0;
8) fread(), fwrite() 它们相当于可将一块的数据读出或写入,相当的方便。原型如下:
size_t fread(void* ptr, size_t size, size_t n, FILE* fp); 从流中读指定个数的字符,size是每块的字节娄,n则是读取的块数。
size_t fwrite(const void* ptr, size_t size, size_t n, FILE* fp); 类似的是向文件流中写入n块size字节数的数据。可以看到数据指针为void*型,即可以使用任何类型的指针来替换。例如:
现在一个结构体: struct student_t{char name; int id; int age;}; 创建三个学生的数据并赋值:struct student_t stu;
这时,当我们找开文件后(一般是进制模式),可以调用fwrite()将三个学生的数据都写入到文件中,两种方式:
for(int i = 0; i 《 3; ++i)
fwrite(&stu[i], sizeof(struct student_t), 1, fp);
或者:fwrite(stu, sizeof(struct student_t), 3, fp);
些时,我们调用fread()函数便可很轻松的将刚才写入的3个学生的数据读取出来:
struct student_t stus;
for(int i = 0; i 《 3; ++i)
fread(&stus[i], sizeof(struct student_t), 1, fp);
或者:fread(stus, sizeof(struct student_t), 3, fp); 这样便可将三个学生的数据读入到stus变量中了(有木有很方便呐)
注意:如果你发现使用fread()读取之后,最后一个学生读取的数据不完全,可能是由于你没有使用二进制模式打开的原因。
9) 最后是tmpfile()和tmpnam(),前者为生成一个临时文件,后者为生成一个唯一的文件名,具体使用在此不介绍了。
二、使用C++中的fstream文件流操作类进行文件的读写
使用fstream操作文件与使用C库函数类似,只不过fstream为面向对象方式,或多了上些C++的特性。首先,这里大概有三个流:
fstream为文件输入输出流,ifstream为输入文件流,ofstream为输出文件流,它们与ostream不同的就流的目的地为文件,而不是控制台。这里只介绍与上述的一些不同点:
1. 打开文件,如可以是 ifstream input_file(“file2.txt“); 这样将会以默认方式打开file2.txt文件并进行读取。也可使用open()方式打开一个文件,并指定打开方式,例如:
ifstream input_file;
input_file.open(“file2.txt“, ios::binary);
打开后,可以使用is_open()检测是否打开成功:
if(input_file.is_open()){},然后可以使用流操作符向文件写数据了,例如:
input_file 《《 “this is a test line“;
input_file 《《 “another info“;
另外,这里的文件打开方式在ios空间下:
ios::app 添加到文件尾
ios::ate 把文件标志放在末尾而非起始。
ios::trunc 默认. 截断并覆写文件。
ios::nocreate 文件不存在也不创建。
ios::noreplace 文件存在则失败。
ofstream使用方式类似,读取一行数据可以使用getline(buf, count), 类型于fgets()。fstream类还提供一个很多其它方法,如fclose()为关闭文件,eof()用于检测状态是否已经到了文件末尾。
这里还有两个类似于上述的fread()和fwrite()函数,是read(), write(),功能和用法类似类似,例如:
output_file.write((const char*)stu, 3 * sizeof(struct student_t));
input_file.read((char*)stus, 3 * sizeof(struct student_t));
注意,这里也需要使用二进制模式打开,否则read的时候最后的上些数据读不完全。调用上面两个函数后可以使用bad()来检测文件流对象是否错误,例如,if(input_file.bad()){printf(“error when read file\n“); return;},最后input_file.close()即可。
最后,C/C++文件的操作并不复杂,多使用几次便可熟练掌握,需要注意的就是文件的打开方式,和当用同一个文件指针进行又读又写时,注意文件指针位置的移动。
-c
sports的中文是什么
sport英 [spɔ:t] 美 [spɔː(r)t]
n. 运动;游戏;娱乐;运动会
vt.& vi. 炫耀,给人看,玩弄
vi. 游戏
vt. 游戏;参加体育运动;夸耀
adj. 运动的
项运动; 芽变; 运动会; 这项运动
复数:sports
过去式:sported
过去分词:sported
现在分词:sporting
第三人称单数:sports
n.运动;体育
vi.嬉戏;炫耀;戏弄
adj.运动的;户外穿戴的
用作名词 (n.)
Baseball is more popular than any other sport in Japan.
在日本,棒球比其他任何运动都受人欢迎。
Football is my favorite sport.
足球是我最喜欢的运动。
Sport is being debased by commercialism.
体育运动的价值受商业化的影响而逐渐下降。
This sport event attrtcaed many advertisers.
这个体育项目吸引了许多广告客户。
用作不及物动词 (vi.)
Don’t sport with her, she’s an old-fashioned girl.
别跟她开玩笑,她是个古板的姑娘。
They sport in the mancipatory possession of their gold.
她们在炫耀她们可以转让的黄金。
用作形容词 (adj.)
Business is a combination of war and sport.
商业是战争和运动的混合体。
用作名词 (n.)
All over the world men and women, boys and girls enjoy sports.
全世界的男女老少都喜爱运动。
They indulged in indoor and outdoor sports within their physical capabilities.
他们尽其体力所能进行室内和室外体活育动。
In order to keep fit, all the students go in for sports.
为了保持健康,所有学生都参加体育运动。
My brother doesn’t care for sports very much.
我哥哥不大喜欢运动。
He played badminton for sport.
他打羽毛球只是运动而已。
He likes sport, not music.
他喜欢体育,不喜欢音乐。
He is interested in sports.
他对体育运动感兴趣。
In sports she eclipsed her elder sister.
她在体育方面超过了她的姐姐。
Simon is younger but he equals his brother in all sports.
西蒙年纪虽小,但各项运动都比得上他哥哥。
Tennis is a popular sport.
网球是一项大众化的运动。
Don’t spend the evening in sport and play only.
晚上的时间不要仅仅用于娱乐。
We find it great sport to go fishing.
我们认为钓鱼好很玩。
It is great sport swimming in the sea.
在海里游泳是件极有趣的事。
The cats are fighting in sport.
猫在打着玩呢。
Please don’t be offended by what I said in sport.
请别为我的玩笑话而生气。
What sport!
真好玩啊!
They were not going to hold the sports meeting as scheduled.
他们不准备按原计划开运动会了。
They’re going to have a sports meet very soon.
他们不久将开运动会。
We’ve decided that our sports meeting (should) be put off till next Monday.
我们已经决定将运动会推迟到下周一举行。
The sports day is an occasion which we can all join in.
运动日是大家都能参加运动的一个机会。
The youth was initiated into the sports club because he applied for membership of the club.
这位青年被吸收加入了体育俱乐部,因为他申请过加入该俱乐部。
A member of the tennis club is counted as belonging to the whole sports club.
网球俱乐部的成员被认为是整个俱乐一部的员。
After only a year in the sports club, the youngest player was elected to the committee.
参加运动俱乐部仅一年,那位最年轻的运动员就被选进了委员会。
A sports personality was invited to kick off at the final.
一位体育界的著名人士被邀请为决赛开球。
As the bugle sounded we ran to the sports ground and fell in.
军号一响,我们就跑到运动场集合站队。
His hat blew off and became the sport of the wind.
他的帽子被风吹跑了,成了风捉弄的对象。
Come on, be a sport.
得啦!拿出男子汉大丈夫的气概来!
You’ve been a real sport to laugh at the trick we play on you.
你是一位真正胸怀宽广的人,对我们的捉弄只是一笑置之。
Be a sport and help me with this suitcase.
行行好,帮我拿着这只衣箱。
John is a good sport, he is ready to try anything.
约翰是一个胆大的人,他对任何事都想试试。
Hi, old sport, have another drink.
嗨,好汉子,再来一杯。
用作名词 (n.)
动词+~
engage in a sport 从事体育运动
give sb good sport 使某人获得大的运动量
go in for sport 参加运动,爱好运动
hold the sports 举行运动会
take part in the sports 参加运动会
take up sport 从事一种体育运动
make sport of sb 开某人的玩笑
形容词+~
dangerous sport 危险的体育运动
every sport 每项体育运动
exciting sport 激动人心的运动
indoor sport 室内运动
national sport 全国性运动
outdoor sport 户外体育运动
traditional sport 传统的体育运动
bad sport 输不起的人,不讨人喜欢的人
good sport 堂堂正正的好汉
poor sport 输不起的人,不讨人喜欢的人
名词+~
contact sport 身体接触的体育项目
country sport 野外运动
motor sport 摩托车比赛
team sport 以队为单位的体育运动
water sport 水上运动
winter sport 冬季运动
school sports 学校运动会
track and field sports 田径运动会
~+名词
sports activities 体育运动
sports centre 体育中心
sports club 体育俱乐部
sports goods 体育用品
sports ground 操场,运动场
sports meet 运动会
sports page (报纸的)体育专栏
介词+~
the world of sport 体育界
catching birds for sport 捕鸟消遣
say sth in sport 说着玩的
n.(名词)
sport的基本意思是“运动”,引申可作“娱乐,消遣,游戏”解,既可用作可数名词,也可用作不可数名词,英式英语多用sport,美式英语多用sports,表示“某项运动”时,其前可加不定冠词a。
sport作“运动会”解时,常用复数形式。
sport 作“嘲笑〔捉弄〕的对象”解,是不可数名词,其前多加定冠词。
sport作“胸怀宽广的人,好心的人,胆大的人”解,是可数名词。
sport在句中可用作定语修饰其他名词。
sport 可用作动词,作“运动,嬉戏”解,引申可指“炫耀,给人看,玩弄”等。例如:Lambs sport in the field.小羊在田里嬉戏。He sports an ivory-handled cane these days.这些天来,他一直在炫耀一只象牙柄手杖。Tom sports a serious, even severe, demeanor, rarely smiling for TV cameras.汤姆的态度变得很认真,甚至严肃起来,在电视机前也很少露出笑脸。In fact, he is sporting with us.事实上,他是在愚弄我们。He sported with her affection.他玩弄她的感情。
n.(名词)
sport, game, match, play, tournament
这组词的共同意思是“运动,竞技,比赛”。其区别在于:
1.sport一般指体力运动,如爬山、滑水、钓鱼等; game指常有一定的规则,而且决定胜负的脑力或体力劳动的“竞技”; match多指网球、足球、高尔夫球等运动项目的比赛,常用在英国; play泛指无目的或结果的消遣或娱乐活动; tournament指通过不同级别的比赛而夺魁的体育项目“比赛”“锦标赛”“联赛”。例如:
Swimming, fishing and horse racing are his favorite sports.游泳、钓鱼和赛马是他最喜欢的运动。
The golf match will be held tomorrow morning.明天上午举行高尔夫球赛。
Which side won the football game yesterday?昨天的足球赛哪一队赢了?
He is fond of play.他喜欢玩。
The International Table Tennis Friendship Invitational Tournament will be held in China this year.今年的国际乒乓球友谊邀请赛将在中国举行。
2.sport和game既可指室内也可指室外的活动; match和tournament一般指室外活动。
3.网球赛一局称game,加起来称为match。
athletics sport game
这些名词均有“体育运动”之意。
athletics:athletics集合名词,常指需要体力与技术的sports与games,特指跳高、跑等竞技项目。
sport:sport含义比athletics广泛,指各种形式的体育运动,尤指户外的如游泳、钓鱼、划船、登山等运动。
game:game主要指决定胜负的游戏、比赛,通常有一定的规则,参加者必须遵守,如篮球、足球等。也作“运动会”解。
n.(名词)
我最喜欢的运动项目是游泳。
误 My favourite sports is swimming.
正 My favourite sport is swmmiing.
析 sport指具体的某种运动项目时,作单数名词, sports泛指运动。
你打算参加学校运动会的跑步吗?
误 Are you going to run in the school sport?
正 Are you going to run in the school sports?
析 sport的复数形式sports可表示“运动会”。
-vice