C++如何从txt文件读取单词到变量中

来源:百度知道 编辑:UC知道 时间:2024/05/21 03:59:11
words.txt里面有30个单词,文件打开如下:
ridiculous incredible antitheist eft nonrepresentational ungraceful tungstate flabellinerved mountebank minimalism paroxysmal liturgician Ethiop keratoscopy Nebuchadnezzar necatoriasis udomograph incivism analogist nubecula escutcheon cognizant saxophonist teliosporangium biotransformation biotrophic craquelure crasis crateful crater

下面是我用来读取这30个词的程序,老师讲的很简单的方法,按照他讲的来做却得不到正确的结果,不知道怎么回事

#include<iostream>
#include<fstream>
#include<string>
#include<cstdlib>

using namespace std;

int main()
{
string word[30];
ifstream read;
ofstream display;
read.open("words.txt");

for (int i=0; i<30; i++)
read>>word[30];

display<<word[13];

cout<<word[2];

read.close();
display.close();
system("pause&qu

使用文件操作函数foepn,fscanf既可以实现此功能。
1.fopen的函数原型:FILE * fopen(const char * path,const char * mode);
fopen函数的第一个参数是文件路径,第二个参数是打开方式,有以下几种方式:
  r 以只读方式打开文件,该文件必须存在。
  r+ 以可读写方式打开文件,该文件必须存在。
  rb+ 读写打开一个二进制文件,允许读数据。
  rw+ 读写打开一个文本文件,允许读和写。
  w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。
  w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。
  a 以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留)
  a+ 以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。 (原来的EOF符不保留)
  wb 只写打开或新建一个二进制文件;只允许写数据。
  wb+ 读写打开或建立一个二进制文件,允许读和写。
  wt+ 读写打开或着建立一个文本文件;允许读写。
  at+ 读写打开一个文本文件,允许读或在文本末追加数据。
  ab+ 读写打开一个二进制文件,允许读或在文件末追加数据。
  上述的形态字符串都可以再加一个b字符,如rb、w+b或ab+等组合,加入b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件。
返回值:文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回NULL,并把错误代码存在errno中。

2.例程:
#include<stdio.h>
#define F_PATH "d:\\myfile\\file.dat"
char c;
int main(){<