diff --git a/Code/Fuzzy/otbFuzzyDescriptorsModelManager.cxx b/Code/Fuzzy/otbFuzzyDescriptorsModelManager.cxx
index 15f06f89b8effda0f24809c73da33764d3066664..506512440a7d20759ebde747b30e6533ff818875 100644
--- a/Code/Fuzzy/otbFuzzyDescriptorsModelManager.cxx
+++ b/Code/Fuzzy/otbFuzzyDescriptorsModelManager.cxx
@@ -91,10 +91,10 @@ FuzzyDescriptorsModelManager
 
 FuzzyDescriptorsModelManager::DescriptorsModelType
 FuzzyDescriptorsModelManager
-::Read(const char * filename)
+::Read(const std::string & filename)
 {
   // Check if the filename is not empty
-  if( filename == NULL )
+  if( filename.empty() == true )
     {
       itkGenericExceptionMacro(<<"The XML output FileName is empty");
     }
@@ -107,7 +107,7 @@ FuzzyDescriptorsModelManager
     }
 
   // Open the xml file
-  TiXmlDocument doc(filename);
+  TiXmlDocument doc(filename.c_str());
   if (!doc.LoadFile())
     {
     itkGenericExceptionMacro(<<"Can't open file "<<filename);
@@ -157,10 +157,10 @@ FuzzyDescriptorsModelManager
 
 void
 FuzzyDescriptorsModelManager
-::Save(const char * filename, DescriptorsModelType & model )
+::Save(const std::string & filename, DescriptorsModelType & model )
 {
   // Check if the filename is not empty
-  if( filename == NULL )
+  if( filename.empty() == true )
     {
       itkGenericExceptionMacro(<<"The XML output FileName is empty");
     }
@@ -201,7 +201,7 @@ FuzzyDescriptorsModelManager
     }
   
   // Finally, write the file
-  doc.SaveFile( filename );
+  doc.SaveFile( filename.c_str() );
 }
 
 
diff --git a/Code/Fuzzy/otbFuzzyDescriptorsModelManager.h b/Code/Fuzzy/otbFuzzyDescriptorsModelManager.h
index 331c3d14c6fda90797176ade25d463b5e556b711..7efbea94a1924eb7bd2703c0b5c9950371663d78 100644
--- a/Code/Fuzzy/otbFuzzyDescriptorsModelManager.h
+++ b/Code/Fuzzy/otbFuzzyDescriptorsModelManager.h
@@ -53,9 +53,9 @@ public:
   /** Print a model */
   static void Print( const DescriptorsModelType & descModel );
   /** Read a model from a xml file */
-  static DescriptorsModelType Read(const char * filename);
+  static DescriptorsModelType Read(const std::string & filename);
   /** Write a model in a xml file */
-  static void Save(const char * filename, DescriptorsModelType & model );
+  static void Save(const std::string & filename, DescriptorsModelType & model );
 
   FuzzyDescriptorsModelManager();
   virtual ~FuzzyDescriptorsModelManager() {}