首页 > 编程语言 >C++ 查找文本文件中字符串是否存在

C++ 查找文本文件中字符串是否存在

时间:2023-11-28 10:05:15浏览次数:42  
标签:file SearchString string filePath lines C++ 查找 文本文件 include


简介

查找文本文件中字符串是否存在

代码

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

using namespace std;

bool SearchString(string filePath, string strF)
{
    vector<string> lines;
    string line;
    ifstream file(filePath); // 打开文件 example.txt  
    if (file.is_open()) // 判断文件是否打开成功  
    {
        while (getline(file, line)) // 逐行读取文件内容  
            lines.push_back(line); // 将每行数据存入 vector 中  
        file.close(); // 关闭文件  
    }

    if (find(lines.begin(), lines.end(), strF) == lines.end())
    {
        return false;
    }
    else
    {
        return true;
    }
}
int main() 
{
    string filePath = "F:\\lihai.txt";
    string searchString1 = "梅须逊雪三分白";
    string searchString2 = "何曾吹落北风中";

    bool result1 = SearchString(filePath, searchString1);
    bool result2 = SearchString(filePath, searchString2);

    cout << "Search result for \"" << searchString1 << "\":" << endl;
    cout << (result1 ? "Found" : "Not found") << endl;

    cout << "Search result for \"" << searchString2 << "\":" << endl;
    cout << (result2 ? "Found" : "Not found") << endl;


    cin.get();
    return 0;
}

输出:
Search result for “梅须逊雪三分白”:
Not found
Search result for “何曾吹落北风中”:
Found


标签:file,SearchString,string,filePath,lines,C++,查找,文本文件,include
From: https://blog.51cto.com/wangpaifeixingy/8595237

相关文章

  • C\C++ 使用RapidJSON库,轻松解析和生成JSON
    简介  RapidJSON是一个高效的C++JSON解析器和生成器。它专注于性能和易用性,使得处理JSON数据变得简单和快速。RapidJSON支持现代的JSON特性,如嵌套对象、数组、Unicode编码和注释。它的API简洁易用,可以轻松解析和生成JSON数据。无论你的项目需要处理大量的JSON数据,还是只需要解析......
  • C++ 字符串编码转换封装函数,UTF-8编码与本地编码互转
    简介字符串编码转换封装函数,UTF-8编码与本地编码互转。中文乱码的解决方法有时候我们会遇到乱码的字符串,比如:古文码可能是用GBK方式读取UTF-8编码的中文导致的,用下面的Utf8ToLocal(stringstr)函数转换一下就可以了。口字码可能是因为以UTF-8的方式读取GBK编码的中文导致的,用下面......
  • C++ 01.学习C++的意义-狄泰软件学院
    一些历史UNIX操作系统诞生之初是用汇编语言编写的随着UNIX系统的发展,汇编语言的开发效率成为瓶颈,所以需要一个新的语言替代汇编语言1971年通过对B语言改良,使其能直接产生机器代码,C语言诞生UNIX使用C语言重写,同时C语言在实践中不断升级完善。C语言的特点没有深思熟虑的设计过程残留......
  • C++ 修改文件创建时间、修改时间属性
    简介        修改文件创建时间、修改时间、大小等属性。        博客《C++获取文件创建时间、修改时间、大小等属性》分享后,好兄弟“古月”发来一段代码,说可以修改文件的创建时间等。测试了一下真可以,下面是运行效果和代码:代码#include<windows.h>#include<f......
  • C++ 使用Windows的API CreateDirectory 创建多层级文件夹
    简介使用Windows的API创建多层级文件夹效果代码#include<windows.h>#include<direct.h>#include<iostream>#include<string>#include<sstream>#include<vector>//创建多层级文件夹boolCreateDir(conststd::string&path){ std::......
  • C++ 获取文件创建时间、修改时间、大小等属性
    简介获取文件创建时间、修改时间、大小等属性代码#include<iostream>#include<string.h>#include<time.h>voidmain(){std::stringfilename="E:\\LiHai123.txt";struct_statstat_buffer;intresult=_stat(filename.c_str(),&stat_b......
  • C++ 获取网卡名称和IP地址
    描述这是获取网卡名称和IP地址的代码示例,参考自。原文描述得比较详细,感谢博主分享。原文代码中没有输出网卡的物理地址,下面的代码进行了补充,并在win10上运行正常。代码//#include<WinSock2.h>#include<Iphlpapi.h>#pragmacomment(lib,"Iphlpapi.lib")//需要添加Iphlpapi.lib......
  • C\C++ 设置Visual Studio编译器使用C++17标准
    文章作者:里海简介:        使用ISOC++17标准可以为开发人员带来许多好处,包括更简洁的代码、更高的运行效率、更好的硬件支持、更好的兼容性和可移植性,以及更好的多线程编程支持等。那么如何设置vs使用c++标准呢?下面是方法。注意需要vs2017及以上版本。方法:打开VisualStud......
  • C++ 33.C++中的字符串类-狄泰软件学院
    C语言字符串的历史C语言不支持真正意义上的字符串C语言用字符数组和一组函数实现字符串操作C语言不支持自定义类型,因此无法创建字符串类型当年C语言主要用于开发UNIX操作系统,处理字符串的情况少,所以在当时的背景下没有让C语言中内置一个字符串类型。后来C语言越用越广泛,没办法只能......
  • C\C++ 专栏目录
    个人总结序号内容笔记01C++获取网卡名称和IP地址笔记链接02C++设置VisualStudio编译器使用C++17标准笔记链接03C++使用Pugixml库,轻松处理XML文件笔记链接04C++使用ShellExecuteEx调exe程序笔记链接05C++使用exception类,抛出自定义异常并捕获笔记链接06C++使用soc......