Commit 6e76de84 authored by Sylvain Thery's avatar Sylvain Thery

add utility function to check filename extension

parent 9c7c680f
/*******************************************************************************
* CGoGN: Combinatorial and Geometric modeling with Generic N-dimensional Maps *
* version 0.1 *
* Copyright (C) 2009-2012, IGG Team, LSIIT, University of Strasbourg *
* *
* This library is free software; you can redistribute it and/or modify it *
* under the terms of the GNU Lesser General Public License as published by the *
* Free Software Foundation; either version 2.1 of the License, or (at your *
* option) any later version. *
* *
* This library is distributed in the hope that it will be useful, but WITHOUT *
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or *
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License *
* for more details. *
* *
* You should have received a copy of the GNU Lesser General Public License *
* along with this library; if not, write to the Free Software Foundation, *
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. *
* *
* Web site: http://cgogn.unistra.fr/ *
* Contact information: cgogn@unistra.fr *
* *
*******************************************************************************/
#ifndef _CGOGN_FILENAME_H_
#define _CGOGN_FILENAME_H_
#include <fstream>
namespace CGoGN
{
namespace Utils
{
inline std::string checkFileNameExtension(const std::string &filename, const std::string extension)
{
std::size_t found = filename.rfind(extension);
if ( (found==std::string::npos) || ((found+extension.length()) != filename.length()) )
{
if (filename[filename.size()-1]=='.')
return filename.substr(0,filename.size()-1) + extension;
return filename + extension;
}
return filename;
}
}
}
#endif
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment