Home | Develop | Download | Contact
RaFile.hpp
1/*
2 * RaFile.hpp
3 *
4 * Copyright 2018 Fernando Pujaico Rivera <fernando.pujaico.rivera@gmail.com>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19 * MA 02110-1301, USA.
20 *
21 */
22
30#ifndef __PDS_RAFILE_HPP__
31#define __PDS_RAFILE_HPP__
32
33#include <string>
34#include <vector>
35#include <cstdio>
36#include <list>
37
47namespace Pds{
52namespace Ra{
53
54
55
68 typedef enum{
71 }ArqType;
72
73
121 std::vector<std::string> GetArquives( const std::string &dirpath,
122 Pds::Ra::ArqType Type,
123 const std::string &pattern_include,
124 const std::string &pattern_exclude);
125
157 std::vector<std::string> GetFiles( const std::string &dirpath,
158 const std::string &pattern_include="*",
159 const std::string &pattern_exclude="");
160
191 std::vector<std::string> GetSubDirs(const std::string &dirpath,
192 const std::string &pattern_include="*",
193 const std::string &pattern_exclude="");
194
219 std::vector<std::string> GenPath( const std::string &dirpath);
220
237 std::vector<std::string> GenSignificativeLines(const std::string &filepath);
264 std::string FullFile( std::vector<std::string> str_text_list );
265
266
280 std::string ReplaceExtension(std::string filepath,std::string new_ext);
281
295 std::string Dirname(std::string filepath);
296
310 std::string Basename(std::string filepath);
311
325 std::string Extension(std::string filepath);
326
340 std::string Filename(std::string filepath);
341
342
366 bool IsFile(std::string path);
367
380 bool IsDir(std::string path);
381
382
414 long SignificativeLinesInFile(const std::string &filepath);
415
439 bool ElementsInFile(const std::string &filepath,unsigned int &Nel);
440
468 bool ArraySizeInFile(const std::string &filepath,unsigned int &Nlin,unsigned int &Ncol);
469
498 bool ArraySizeInFile( const std::string &filepath,
499 const std::string &sep,
500 unsigned int &Nlin,
501 unsigned int &Ncol);
523 char *Fgets(FILE *fd);
524
525
526
533} // namespace Ra
534} // namespace Pds
535
536
541#endif /* __PDS_RAFILE_HPP__ */
std::string Filename(std::string filepath)
Retorna un std::string con el filename de un filepath.
std::vector< std::string > GenSignificativeLines(const std::string &filepath)
Retorna un vector de cadenas con las lineas significativas (no vacias) del archivo....
std::string ReplaceExtension(std::string filepath, std::string new_ext)
Retorna un std::string con un filepath con otra extension de un filepath.
ArqType
Una union de tipo ArqType. Esta union tiene dos tipos de datos tipo directorio y tipo documento.
Definition: RaFile.hpp:68
std::string Basename(std::string filepath)
Retorna un std::string con el basename de un filepath.
std::vector< std::string > GetFiles(const std::string &dirpath, const std::string &pattern_include="*", const std::string &pattern_exclude="")
Retorna los ficheros dentro de un directorio (en un nivel solamente y siguiendo algunos criterios).
bool ArraySizeInFile(const std::string &filepath, unsigned int &Nlin, unsigned int &Ncol)
Retorna el número de lineas significativas y columnas de un archivo. Se asume que es un archivo de te...
long SignificativeLinesInFile(const std::string &filepath)
Retorna el número de lineas significativas de un archivo. Se asume que es un archivo de texto.
std::vector< std::string > GenPath(const std::string &dirpath)
Retorna el directorio actual y todos los subdirectorios (recursivamente y siguiendo algunos criterios...
std::string Extension(std::string filepath)
Retorna un std::string con el extension de un filepath.
std::string FullFile(std::vector< std::string > str_text_list)
Retorna una nueva cadena con un filepath creado por la union de las cadenas de entrada,...
char * Fgets(FILE *fd)
Retorna una linea leida desde un desriptor de fichero de texto. No descarta el salto de linea '\n' y ...
std::vector< std::string > GetSubDirs(const std::string &dirpath, const std::string &pattern_include="*", const std::string &pattern_exclude="")
Retorna todos los subdirectorios dentro de un directorio (recursivamente y siguiendo algunos criterio...
bool IsFile(std::string path)
Retorna true si es un fichero existenteste (simbólico o real) no directorio, o false si no.
std::string Dirname(std::string filepath)
Retorna un std::string con el directorio de un filepath.
bool ElementsInFile(const std::string &filepath, unsigned int &Nel)
Retorna el número de elementos de un archivo. Se asume que es un archivo de texto.
bool IsDir(std::string path)
Retorna true si es un directorio existenteste (simbólico o real) no fichero, o false si no.
std::vector< std::string > GetArquives(const std::string &dirpath, Pds::Ra::ArqType Type, const std::string &pattern_include, const std::string &pattern_exclude)
Retorna los archivos dentro de un directorio (en un nivel solamente y siguiendo algunos criterios).
@ TYPE_FILE
Definition: RaFile.hpp:69
@ TYPE_DIR
Definition: RaFile.hpp:70
Nombre de espacio para Pds (Procesamiento Digital de Senales)
Definition: AbstractRV.hpp:42

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed