Home | Develop | Download | Contact
Namespaces
Extras Pds::Ra – File

Funciones con archivos: Pds::Ra::ElementsInFile(), etc. Más...

Namespaces

namespace  Pds
 Nombre de espacion para PDS (Procesamiento Digital de Senales)
 
namespace  Pds::Ra
 Nombre de espacio para RA (Real Arrays)
 

Trabajar con archivos notables y del sistema

Salva datos de matrices

const std::string Pds::Ra::FileSep
 std::string con un separador de fichero "\\" para WINDOWS y "/" para linux. Más...
 
const char Pds::Ra::CharFileSep
 std::string con un separador de fichero "\\" para WINDOWS y "/" para linux. Más...
 
std::string Pds::Ra::HomeDir (void)
 Retorna una nueva cadena de texto con la dirección del directorio de usuario. HOME en gnu-linux y {HOMEDRIVE,HOMEPATH} en Windows. Más...
 
std::string Pds::Ra::ProgramPath (void)
 Retorna un std::string con la ruta del programa que lo invoca. Más...
 
std::string Pds::Ra::ProgramDirPath (void)
 Retorna un std::string con la ruta del directorio del programa que lo invoca. Más...
 
std::string Pds::Ra::Pwd (void)
 Retorna un std::string con la ruta actual. Más...
 

Trabajar con busqueda archivos

Salva datos de matrices

std::vector< std::string > Pds::Ra::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). Más...
 
std::vector< std::string > Pds::Ra::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). Más...
 
std::vector< std::string > Pds::Ra::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 criterios). Más...
 
std::vector< std::string > Pds::Ra::GenPath (const std::string &dirpath)
 Retorna el directorio actual y todos los subdirectorios (recursivamente y siguiendo algunos criterios). Más...
 
std::vector< std::string > Pds::Ra::GenSignificativeLines (const std::string &filepath)
 Retorna un vector de cadenas con las lineas significativas (no vacias) delarchivo. Más...
 

Trabajar con unión y división de filepaths

Salva datos de matrices

bool Pds::Ra::MakeDir (const std::string &dirpath)
 Crea un directorio recursivamente si es necesario. Más...
 
std::string Pds::Ra::FullFile (std::vector< std::string > str_text_list)
 Retorna una nueva cadena con un filepath creado por la union de las cadenas de entrada, usando para concatenar Pds::Ra::FileSep. Más...
 
std::string Pds::Ra::ReplaceExtension (std::string filepath, std::string new_ext)
 Retorna un std::string con un filepath con otra extension de un filepath. Más...
 
std::string Pds::Ra::Dirname (std::string filepath)
 Retorna un std::string con el directorio de un filepath. Más...
 
std::string Pds::Ra::Basename (std::string filepath)
 Retorna un std::string con el basename de un filepath. Más...
 
std::string Pds::Ra::Extension (std::string filepath)
 Retorna un std::string con el extension de un filepath. Más...
 
std::string Pds::Ra::Filename (std::string filepath)
 Retorna un std::string con el filename de un filepath. Más...
 

Trabajar con verificacion de archivos

Salva datos de matrices

bool Pds::Ra::IsFile (std::string path)
 Retorna true si es un fichero existenteste (simbólico o real) no directorio, o false si no. Más...
 
bool Pds::Ra::IsDir (std::string path)
 Retorna true si es un directorio existenteste (simbólico o real) no fichero, o false si no. Más...
 

Trabajar con cuenta de datos en archivos

Salva datos de matrices

long Pds::Ra::SignificativeLinesInFile (const std::string &filepath)
 Retorna el número de lineas significativas de un archivo. Se asume que es un archivo de texto. Más...
 
bool Pds::Ra::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. Más...
 
bool Pds::Ra::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 texto. Más...
 

Trabajar con archivos otros

Salva datos de matrices

char * Pds::Ra::Fgets (FILE *fd)
 Retorna una linea leida desde un desriptor de fichero de texto. No descarta el salto de linea '\n' y no descarta 1 retorno de carro '\r' si este existe depues del salto de linea. Más...
 

Enumeraciones en RaFile

para trabajar con lectura de archivos

enum  Pds::Ra::ArqType { Pds::Ra::TYPE_FILE , Pds::Ra::TYPE_DIR }
 Una union de tipo ArqType. Esta union tiene dos tipos de datos tipo directorio y tipo documento.
Más...
 

Descripción detallada

Funciones con archivos: Pds::Ra::ElementsInFile(), etc.

#include <Pds/RaFile>

Documentación de las enumeraciones

◆ ArqType

Una union de tipo ArqType. Esta union tiene dos tipos de datos tipo directorio y tipo documento.

Valores de enumeraciones
TYPE_FILE 

Buscando ficheros excluyendo los simbólicos

TYPE_DIR 

Buscando directorios excluyendo los simbólicos

Definición en la línea 68 del archivo RaFile.hpp.

68  {
69  TYPE_FILE,
70  TYPE_DIR,
71  }ArqType;
ArqType
Una union de tipo ArqType. Esta union tiene dos tipos de datos tipo directorio y tipo documento.
Definition: RaFile.hpp:68
@ TYPE_FILE
Definition: RaFile.hpp:69
@ TYPE_DIR
Definition: RaFile.hpp:70

Documentación de las funciones

◆ GetArquives()

std::vector<std::string> Pds::Ra::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).

Retorna una estructura std::vector<std::string> con un vector de nombres de arquivo.

Atención
No ordena los archivos alfabeticamente. Se recomienda usar
std::vector<std::string> fullnames;
// fullnames=Pds::Ra::GetArquives(...);
// Alphabetical sort
std::sort(fullnames.begin(), fullnames.end());
// Natural sort
std::sort(fullnames.begin(), fullnames.end(),Pds::Ra::NaturalCompare);
bool NaturalCompare(const std::string &str1, const std::string &str2)
Esta función compara las cadenas str1 y str2 de forma natural (tomando en cuenta números).
Parámetros
[in]dirpathCamino del directorio en consulta.
[in]TypeEl tipo de arquivo a leer, pueden ser usados los valores :
[in]pattern_includePatrón de archivos a incluir solamente. Ej. "*" para todos los archivos.
[in]pattern_excludePatrón de archivos a excluir. Ej. "" para ninguno de los archivos.
Devuelve
Retorna un std::vector<std::string> con un vector de string con nombres de arquivo.
Ejemplos
example_ra_file_find.cpp.

◆ GetFiles()

std::vector<std::string> Pds::Ra::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).

Retorna una estructura std::vector<std::string> con un vector de nombres de arquivo.

Atención
No ordena los archivos alfabeticamente. Se recomienda usar
std::vector<std::string> fullnames;
// fullnames=Pds::Ra::GetFiles(...)
// Alphabetical sort
std::sort(fullnames.begin(), fullnames.end());
// Natural sort
std::sort(fullnames.begin(), fullnames.end(),Pds::Ra::NaturalCompare);
Parámetros
[in]dirpathCamino del directorio en consulta.
[in]pattern_includePatrón de archivos a incluir solamente. Ej. "*" para todos los archivos.
[in]pattern_excludePatrón de archivos a excluir. Ej. "" para ninguno de los archivos.
Devuelve
Retorna un std::vector<std::string> con un vector de string con nombres de arquivo.
Ejemplos
example_ra_file_find.cpp.

◆ GetSubDirs()

std::vector<std::string> Pds::Ra::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 criterios).

Retorna una estructura std::vector<std::string> con un vector de nombres de arquivo.

Atención
No ordena los archivos alfabeticamente. Se recomienda usar
std::vector<std::string> fullnames;
// fullnames=Pds::Ra::GetSubDirs(...);
// Alphabetical sort
std::sort(fullnames.begin(), fullnames.end());
// Natural sort
std::sort(fullnames.begin(), fullnames.end(),Pds::Ra::NaturalCompare);
Parámetros
[in]dirpathCamino del directorio en consulta.
[in]pattern_includePatrón de archivos a incluir solamente. Ej. "*" para todos los archivos.
[in]pattern_excludePatrón de archivos a excluir. Ej. "" para ninguno de los archivos.
Devuelve
Retorna un std::vector<std::string> con un vector de string con nombres de arquivo.
Ejemplos
example_ra_file_find.cpp.

◆ GenPath()

std::vector<std::string> Pds::Ra::GenPath ( const std::string &  dirpath)

Retorna el directorio actual y todos los subdirectorios (recursivamente y siguiendo algunos criterios).

Retorna una estructura std::vector<std::string> con un vector de nombres de arquivo. Los directorios son ordenados naturalmente con Pds::Ra::NaturalCompare().

Parámetros
[in]dirpathCamino del directorio en consulta.
Devuelve
Retorna un std::vector<std::string> con un vector de string con nombres de directorios.
Ejemplos
example_ra_file_find.cpp.

◆ GenSignificativeLines()

std::vector<std::string> Pds::Ra::GenSignificativeLines ( const std::string &  filepath)

Retorna un vector de cadenas con las lineas significativas (no vacias) delarchivo.

Parámetros
[in]filepathArchivo en consulta.
Devuelve
Retorna un std::vector<std::string> con las lineas significativas (no vacias) delarchivo.
Ejemplos
example_ra_file.cpp.

◆ HomeDir()

std::string Pds::Ra::HomeDir ( void  )

Retorna una nueva cadena de texto con la dirección del directorio de usuario. HOME en gnu-linux y {HOMEDRIVE,HOMEPATH} en Windows.

Devuelve
Retorna el directorio de usuario o NULL en caso de problemas en la reserva de memoria.
Ejemplos
example_ra_file.cpp.

◆ ProgramPath()

std::string Pds::Ra::ProgramPath ( void  )

Retorna un std::string con la ruta del programa que lo invoca.

Devuelve
Retorna un std::string con la ruta del programa que lo invoca.
Ejemplos
example_ra_file.cpp.

◆ ProgramDirPath()

std::string Pds::Ra::ProgramDirPath ( void  )

Retorna un std::string con la ruta del directorio del programa que lo invoca.

Devuelve
Retorna un std::string con la ruta del directorio del programa que lo invoca.
Ejemplos
example_ra_file.cpp.

◆ Pwd()

std::string Pds::Ra::Pwd ( void  )

Retorna un std::string con la ruta actual.

Devuelve
Retorna un std::string con la ruta actual.
Ejemplos
example_ra_file.cpp.

◆ MakeDir()

bool Pds::Ra::MakeDir ( const std::string &  dirpath)

Crea un directorio recursivamente si es necesario.

Parámetros
[in]dirpathDirectorio a crear
Devuelve
Retorna true si el directorio fue creado o false si no.
Ejemplos
example_ra_file.cpp.

◆ FullFile()

std::string Pds::Ra::FullFile ( std::vector< std::string >  str_text_list)

Retorna una nueva cadena con un filepath creado por la union de las cadenas de entrada, usando para concatenar Pds::Ra::FileSep.

std::string str_out=FullFile({"/usr","share","program_name","icons"});
std::cout<<str_out<<std::endl;
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,...
Parámetros
[in]str_text_listLista de argumentos a concatenar.
Devuelve
Retorna una nueva cadena con un filepath creado por la union de las cadenas de entrada, usando para concatenar Pds::Ra::FileSep.
Ejemplos
example_ra_file.cpp.

◆ ReplaceExtension()

std::string Pds::Ra::ReplaceExtension ( std::string  filepath,
std::string  new_ext 
)

Retorna un std::string con un filepath con otra extension de un filepath.

std::string filepath="/usr/share/program_name/icons/image.png";
std::cout<<Pds::Ra::ReplaceExtension(filepath,".bmp")<<std::endl;
std::string ReplaceExtension(std::string filepath, std::string new_ext)
Retorna un std::string con un filepath con otra extension de un filepath.

Retorna:

/usr/share/program_name/icons/image.bmp
Devuelve
Retorna un std::string con un filepath con otra extension de un filepath.
Ejemplos
example_ra_file.cpp.

◆ Dirname()

std::string Pds::Ra::Dirname ( std::string  filepath)

Retorna un std::string con el directorio de un filepath.

std::string filepath="/usr/share/program_name/icons/image.png";
std::cout<<Pds::Ra::Dirname(filepath)<<std::endl;
std::string Dirname(std::string filepath)
Retorna un std::string con el directorio de un filepath.

Retorna:

/usr/share/program_name/icons
Devuelve
Retorna un std::string con el directorio de un filepath.
Ejemplos
example_ra_file.cpp.

◆ Basename()

std::string Pds::Ra::Basename ( std::string  filepath)

Retorna un std::string con el basename de un filepath.

std::string filepath="/usr/share/program_name/icons/image.png";
std::cout<<Pds::Ra::Basename(filepath)<<std::endl;
std::string Basename(std::string filepath)
Retorna un std::string con el basename de un filepath.

Retorna:

image.png
Devuelve
Retorna un std::string con el basename de un filepath.
Ejemplos
example_ra_file.cpp.

◆ Extension()

std::string Pds::Ra::Extension ( std::string  filepath)

Retorna un std::string con el extension de un filepath.

std::string filepath="/usr/share/program_name/icons/image.png";
std::cout<<Pds::Ra::Extension(filepath)<<std::endl;
std::string Extension(std::string filepath)
Retorna un std::string con el extension de un filepath.

Retorna:

.png
Devuelve
Retorna un std::string con el extension de un filepath.
Ejemplos
example_ra_file.cpp.

◆ Filename()

std::string Pds::Ra::Filename ( std::string  filepath)

Retorna un std::string con el filename de un filepath.

std::string filepath="/usr/share/program_name/icons/image.png";
std::cout<<Pds::Ra::Filename(filepath)<<std::endl;
std::string Filename(std::string filepath)
Retorna un std::string con el filename de un filepath.

Retorna:

image
Devuelve
Retorna un std::string con el filename de un filepath.
Ejemplos
example_ra_file.cpp.

◆ IsFile()

bool Pds::Ra::IsFile ( std::string  path)

Retorna true si es un fichero existenteste (simbólico o real) no directorio, o false si no.

Parámetros
[in]pathDirección de fichero a testar.
Devuelve
Retorna true si es un fichero existenteste (simbólico o real) no directorio, o false si no.
Ejemplos
example_ra_file.cpp.

◆ IsDir()

bool Pds::Ra::IsDir ( std::string  path)

Retorna true si es un directorio existenteste (simbólico o real) no fichero, o false si no.

Parámetros
[in]pathDirección de directorio a testar.
Devuelve
Retorna true si es un directorio existenteste (simbólico o real) no fichero, o false si no.
Ejemplos
example_ra_file.cpp.

◆ SignificativeLinesInFile()

long Pds::Ra::SignificativeLinesInFile ( const std::string &  filepath)

Retorna el número de lineas significativas de un archivo. Se asume que es un archivo de texto.

Una linea no significativa solo contiene white-spaces:

' ' (0x20) space (SPC)
'\t' (0x09) horizontal tab (TAB)
'\n' (0x0a) newline (LF)
'\v' (0x0b) vertical tab (VT)
'\f' (0x0c) feed (FF)
'\r' (0x0d) carriage return (CR)
Parámetros
[in]filepathDirección de archivo a testar.
Devuelve
Retorna el número de lineas significativas de un archivo o negativo en caso de error

◆ ElementsInFile()

bool Pds::Ra::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.

Una un elemento e cualquier grupo de caracteres con elementos que no contienen white-spaces:

' ' (0x20) space (SPC)
'\t' (0x09) horizontal tab (TAB)
'\n' (0x0a) newline (LF)
'\v' (0x0b) vertical tab (VT)
'\f' (0x0c) feed (FF)
'\r' (0x0d) carriage return (CR)
Parámetros
[in]filepathDirección de archivo a testar.
[out]NelVariable donde se guardara el numero de elementos.
Devuelve
Retorna true si todo fue bien o false si no. Si fue retornado false entonces Nel no es modificado.

◆ ArraySizeInFile()

bool Pds::Ra::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 texto.

Una linea no significativa solo contiene white-spaces:

' ' (0x20) space (SPC)
'\t' (0x09) horizontal tab (TAB)
'\n' (0x0a) newline (LF)
'\v' (0x0b) vertical tab (VT)
'\f' (0x0c) feed (FF)
'\r' (0x0d) carriage return (CR)
Parámetros
[in]filepathDirección de archivo a testar.
[out]NlinVariable donde se guardara el numero de lineas.
[out]NcolVariable donde se guardara el numero de columnas.
Devuelve
Retorna true si todo fue bien o false si no. Si el numero de columnas no es constante entonces se retorna false. Si fue retornado false entonces Nlin y Ncol no son modificados.

◆ Fgets()

char* Pds::Ra::Fgets ( FILE *  fd)

Retorna una linea leida desde un desriptor de fichero de texto. No descarta el salto de linea '\n' y no descarta 1 retorno de carro '\r' si este existe depues del salto de linea.

Parámetros
[in]fdDescriptor de fichero de texto a analizar.
Devuelve
Retorna una nueva cadena de texto con una copia de la linea leida incluyendo los caracteres de control finales exepto EOF.

Documentación de las variables

◆ FileSep

const std::string Pds::Ra::FileSep
Valor inicial:
=
"/"

std::string con un separador de fichero "\\" para WINDOWS y "/" para linux.

Ejemplos
example_ra_file.cpp.

Definición en la línea 193 del archivo RaFile.hpp.

◆ CharFileSep

const char Pds::Ra::CharFileSep
Valor inicial:
=
'/'

std::string con un separador de fichero "\\" para WINDOWS y "/" para linux.

Definición en la línea 204 del archivo RaFile.hpp.

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed