从.cpp文件读取时出现问题

用户名

我有一个名为text.cpp的文件。我的任务是从文件中读取的。

text.cpp文件(在文件内部)

#include <iostream>     
#include <cstring>
#include <ctype.h>
#include "program.h"
#include "binarytree.h" 
#include "linkedlist.h"

当我检测到

 '#' symbol

系统将开始循环,如果它检测到'<' & '"'符号,则将打印出剩余的单词。示例输出:iostraem

我可以检测'<'符号并打印输出成功。但是,当我检测到'"'符号时,我可以打印剩余的单词(program.h),但它会紧跟烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫该单词的后面。

我可以知道我的代码有什么问题吗?

我的代码如下:

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

    using namespace std;

    int main()

    {   char temPlate[100];
        char FileName[20];


    cout << "Enter Filename:" ;
    cin >> FileName;

    fstream read(FileName);
    if (read.is_open())
    {
        while(!read.eof())
        {
        read.getline(temPlate, 100);

            for (int k = 0; k < 100 ;k++)
            {
                if(temPlate[k] == '#')
                {
                    for(int i = 0; i < 100; i++)
                    {
                        if(temPlate[i] == '<' ||  temPlate[i] == '"')
                        {
                            for (int j = i+1; j < 100; j++)
                            {
                                if(temPlate[j] == '>' || temPlate[j] == '"')
                                {
                                    break;

                                }
                                cout << temPlate[j];

                            }
                            cout  <<endl;
                        }       
                    }
                 }
            }
        }
    }

    else
    {
        cout << "File does not exist, press enter to exit the program." <<  endl;
        system("pause");
        exit(EXIT_SUCCESS);

    }
    system("pause");

}

输出:

Enter FileName: text.cpp
iostream
cstring
ctype.h
program.h
 ype.h
binarytree.h
 烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫
linkedlist.h
 烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫
退役的忍者

这确实比需要的要复杂得多。您可能会考虑这样的事情:

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

int main()
{   
    std::string inputFilename;
    std::cout << "Enter Filename:";
    std::cin >> inputFilename;

    std::ifstream inputFile(inputFilename);
    if(inputFile)
    {
        std::string line;
        while(std::getline(inputFile, line))
        {
            if(line.find('#') != std::string::npos)
            {
                size_t startPos = line.find_first_of("<\"");
                size_t endPos = line.find_last_of(">\"");
                if(startPos != std::string::npos && endPos != std::string::npos)
                {
                    //advance start to after the < or "
                    ++startPos;
                    //sanity check just in case the line was ill formed
                    if(startPos < endPos)
                    {
                        std::cout << line.substr(startPos, endPos - startPos) << std::endl;
                    }
                }
            }
        }
    }
    else
    {
        std::cout << "File '" << inputFilename << "' does not exist." <<  std::endl;
    }
    return 0;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用awk读取系统文件时出现问题

来自分类Dev

在R中读取JSON文件时出现问题

来自分类Dev

发布组织文件时出现问题

来自分类Dev

读取C txt文件时出现问题

来自分类Dev

从文件中读取日语字符时出现问题-C

来自分类Dev

在Ruby中读取大型JSON文件时出现问题

来自分类Dev

使用扫描仪读取文件时出现问题

来自分类Dev

在JavaScript / SAPUI5中读取Excel(xlsx)文件数据时出现问题

来自分类Dev

在C中的结构化列表中将stdin作为文件读取时出现问题

来自分类Dev

C编程:读取文件文本并尝试找出最长的单词时出现问题

来自分类Dev

Python:读写文件时出现问题

来自分类Dev

尝试读取使用Python数组模块创建的数据文件时出现问题

来自分类Dev

读取文件并将其存储在unordered_map中时出现问题

来自分类Dev

从CSV文件读取到Postgresql时出现问题

来自分类Dev

在C#中读取Gzip文件时出现问题

来自分类Dev

读取.bed文件并以特定格式压缩输出时出现问题

来自分类Dev

在R中读取.rdb文件时出现问题

来自分类Dev

读取DateTime字段时出现问题

来自分类Dev

编译Java文件时出现问题

来自分类Dev

读取csv文件时出现问题

来自分类Dev

解析json文件时出现问题

来自分类Dev

读取GML文件时出现问题(未重新投影)

来自分类Dev

运行jar文件时出现问题

来自分类Dev

在Ruby中读取大型JSON文件时出现问题

来自分类Dev

使用扫描仪读取文件时出现问题

来自分类Dev

上载图片文件时出现问题

来自分类Dev

从WAR文件读取文件时出现问题

来自分类Dev

读取.txt文件时出现问题

来自分类Dev

使用 cpp-httplib 传输文件时出现问题

Related 相关文章

热门标签

归档