{"id":118,"date":"2026-02-23T20:47:48","date_gmt":"2026-02-23T20:47:48","guid":{"rendered":"https:\/\/hackcuba.net\/?p=118"},"modified":"2026-02-23T20:50:00","modified_gmt":"2026-02-23T20:50:00","slug":"buscador-de-archivos-en-c","status":"publish","type":"post","link":"https:\/\/hackcuba.net\/?p=118","title":{"rendered":"Buscador de archivos en C++"},"content":{"rendered":"\n<p>Este programa permite buscar archivos dentro de un directorio (y sus subdirectorios) usando una palabra clave en el nombre del archivo.<\/p>\n\n\n\n<!--more-->\n\n\n\n<h2 class=\"wp-block-heading\">Requisitos<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>C++17 o superior (usa <code>&lt;filesystem><\/code>)<\/li>\n\n\n\n<li>Compilador moderno como g++ 8+, MSVC o Clang<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;iostream>\n#include &lt;filesystem>\n#include &lt;string>\n\nnamespace fs = std::filesystem;\n\nvoid buscarArchivos(const fs::path&amp; ruta, const std::string&amp; nombreBuscado) {\n    try {\n        for (const auto&amp; entrada : fs::recursive_directory_iterator(ruta)) {\n            if (entrada.is_regular_file()) {\n                std::string nombreArchivo = entrada.path().filename().string();\n                \n                if (nombreArchivo.find(nombreBuscado) != std::string::npos) {\n                    std::cout &lt;&lt; \"Encontrado: \" &lt;&lt; entrada.path() &lt;&lt; std::endl;\n                }\n            }\n        }\n    } catch (const fs::filesystem_error&amp; e) {\n        std::cerr &lt;&lt; \"Error: \" &lt;&lt; e.what() &lt;&lt; std::endl;\n    }\n}\n\nint main() {\n    std::string ruta;\n    std::string nombreBuscado;\n\n    std::cout &lt;&lt; \"Ingrese la ruta donde desea buscar: \";\n    std::getline(std::cin, ruta);\n\n    std::cout &lt;&lt; \"Ingrese el nombre o parte del nombre del archivo a buscar: \";\n    std::getline(std::cin, nombreBuscado);\n\n    fs::path directorio(ruta);\n\n    if (fs::exists(directorio) &amp;&amp; fs::is_directory(directorio)) {\n        buscarArchivos(directorio, nombreBuscado);\n    } else {\n        std::cerr &lt;&lt; \"La ruta especificada no es v\u00e1lida.\" &lt;&lt; std::endl;\n    }\n\n    return 0;\n}\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Este programa permite buscar archivos dentro de un directorio (y sus subdirectorios) usando una palabra clave en el<\/p>\n","protected":false},"author":2,"featured_media":119,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[59],"tags":[60],"class_list":["post-118","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-codigos","tag-c"],"_links":{"self":[{"href":"https:\/\/hackcuba.net\/index.php?rest_route=\/wp\/v2\/posts\/118","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hackcuba.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hackcuba.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hackcuba.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/hackcuba.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=118"}],"version-history":[{"count":4,"href":"https:\/\/hackcuba.net\/index.php?rest_route=\/wp\/v2\/posts\/118\/revisions"}],"predecessor-version":[{"id":123,"href":"https:\/\/hackcuba.net\/index.php?rest_route=\/wp\/v2\/posts\/118\/revisions\/123"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/hackcuba.net\/index.php?rest_route=\/wp\/v2\/media\/119"}],"wp:attachment":[{"href":"https:\/\/hackcuba.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=118"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hackcuba.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=118"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hackcuba.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=118"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}