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 <cstdio>
35 #include <list>
36 
46 namespace Pds{
51 namespace Ra{
52 
53 
63  const std::string FileSep =
64  #if defined(WIN32) || defined(_WIN32)
65  "\\";
66  #else
67  "/";
68  #endif
69 
74  const char CharFileSep =
75  #if defined(WIN32) || defined(_WIN32)
76  '\\';
77  #else
78  '/';
79  #endif
97  long SignificativeLinesInFile(const std::string &filepath);
98 
99 
118  bool ElementsInFile(const std::string &filepath,unsigned int &Nel);
119 
140  bool ArraySizeInFile(const std::string &filepath,unsigned int &Nlin,unsigned int &Ncol);
141 
151  char *Fgets(FILE *fd);
152 
165  std::string FullFile( std::initializer_list<std::string> str_text_list );
166 
173  std::string HomeDir(void);
174 
179  std::string Programpath(void);
180 
185  std::string Pwd(void);
186 
200  std::string Dirname(std::string filepath);
201 
215  std::string Basename(std::string filepath);
216 
230  std::string Extension(std::string filepath);
231 
245  std::string Filename(std::string filepath);
246 
260  std::string ReplaceExtension(std::string filepath,std::string new_ext);
261 
270  bool IsFile(std::string path);
271 
280  bool IsDir(std::string path);
281 
299  std::string GetParamString( int argc,
300  char* const argv[],
301  std::string param,
302  std::string default_data);
303 
304 
312  bool ExistParam(int argc, char* const argv[], std::string param);
313 
319 } // namespace Ra
320 } // namespace Pds
321 
322 
327 #endif /* __PDS_RAFILE_HPP__ */
std::string HomeDir(void)
Retorna una nueva cadena de texto con la dirección del directorio de usuario. HOME en gnu-linux y {HO...
std::string Filename(std::string filepath)
Retorna un std::string con el filename de un filepath.
std::string Programpath(void)
Retorna un std::string con la ruta del programa que lo invoca.
std::string ReplaceExtension(std::string filepath, std::string new_ext)
Retorna un std::string con un filepath con otra extension de un filepath.
std::string Basename(std::string filepath)
Retorna un std::string con el basename de un filepath.
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...
char * Fgets(FILE *fd)
Retorna una linea leida desde un desriptor de fichero de texto. No descarta el salto de linea '\n' y ...
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::string GetParamString(int argc, char *const argv[], std::string param, std::string default_data)
Obtiene el dato de tipo std::string que va después del parámetro param en una cadena de parámetros ar...
std::string Pwd(void)
Retorna un std::string con la ruta actual.
std::string FullFile(std::initializer_list< std::string > str_text_list)
Retorna una nueva cadena con un filepath creado por la union de las cadenas de entrada,...
const std::string FileSep
std::string con un separador de fichero "\\" para WINDOWS y "/" para linux.
Definition: RaFile.hpp:63
std::string Extension(std::string filepath)
Retorna un std::string con el extension de un filepath.
bool ExistParam(int argc, char *const argv[], std::string param)
Retorna true si existe el parámetro param.
const char CharFileSep
std::string con un separador de fichero "\\" para WINDOWS y "/" para linux.
Definition: RaFile.hpp:74
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.
Nombre de espacion para PDS (Procesamiento Digital de Senales)
Definition: RaFile.hpp:46

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed