当前位置:  开发笔记 > 编程语言 > 正文

如何将文本文件拆分成文字?

如何解决《如何将文本文件拆分成文字?》经验,为你挑选了1个好方法。

我正在进行一项任务,我应该读取一个文件并计算行数,同时计算其中的单词.我在while循环中尝试了getline和strtok的组合,但是没有用.

file:example.txt(要读取的文件).

嗨,你好,这真是一个惊喜.
欢迎来到这个地方.
愿你在这里过得愉快.
(3行,有些话).

Readfile.cpp

#include 
#include 
#include
using namespace std;
int main()
{
  ifstream in("example.txt");
  int count = 0;

  if(!in)
  {
    cout << "Cannot open input file.\n";
    return 1;
  }

  char str[255];
  string tok;
  char * t2;

  while(in)
  {
    in.getline(str, 255);
    in>>tok;
    char *dup = strdup(tok.c_str());
    do 
    {
        t2 = strtok(dup," ");
    }while(t2 != NULL);
    cout<

Rocco Lampon.. 5

刚刚做对了!! 刚删除所有不必要的代码.

int main()
{    
    ifstream in("example.txt");
    int LineCount = 0;
    char* str = new char[500];

    while(in)
    {
        LineCount++;
        in.getline(str, 255);
        char * tempPtr = strtok(str," ");
        while(tempPtr)
        {
            AddWord(tempPtr, LineCount);
            tempPtr = strtok(NULL," ,.");
        }
    }
    in.close();
    delete [] str;
    cout<<"Total No of lines:"<

BTW原始问题陈述是创建一个索引程序,它将接受用户文件并创建所有单词的行索引.



1> Rocco Lampon..:

刚刚做对了!! 刚删除所有不必要的代码.

int main()
{    
    ifstream in("example.txt");
    int LineCount = 0;
    char* str = new char[500];

    while(in)
    {
        LineCount++;
        in.getline(str, 255);
        char * tempPtr = strtok(str," ");
        while(tempPtr)
        {
            AddWord(tempPtr, LineCount);
            tempPtr = strtok(NULL," ,.");
        }
    }
    in.close();
    delete [] str;
    cout<<"Total No of lines:"<

BTW原始问题陈述是创建一个索引程序,它将接受用户文件并创建所有单词的行索引.

推荐阅读
wangtao
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有