diff --git a/samples/qt/Interface/src/Translate.cxx b/samples/qt/Interface/src/Translate.cxx
index a272c038ea..38302dfcec 100755
--- a/samples/qt/Interface/src/Translate.cxx
+++ b/samples/qt/Interface/src/Translate.cxx
@@ -393,8 +393,8 @@ Handle(TopTools_HSequenceOfShape) Translate::importBREP( const QString& file )
 	Handle(TopTools_HSequenceOfShape) aSequence;
     TopoDS_Shape aShape;
 	BRep_Builder aBuilder;
-
-	Standard_Boolean result = BRepTools::Read( aShape, (Standard_CString)file.toLatin1().constData(), aBuilder );
+  TCollection_AsciiString  aFilePath = file.toUtf8().data();
+	Standard_Boolean result = BRepTools::Read( aShape, aFilePath.ToCString(), aBuilder );
 	if ( result )
     {
 	    aSequence = new TopTools_HSequenceOfShape();
@@ -406,8 +406,10 @@ Handle(TopTools_HSequenceOfShape) Translate::importBREP( const QString& file )
 Handle(TopTools_HSequenceOfShape) Translate::importIGES( const QString& file )
 {
     Handle(TopTools_HSequenceOfShape) aSequence;
+    TCollection_AsciiString  aFilePath = file.toUtf8().data();
+      
     IGESControl_Reader Reader;
-    int status = Reader.ReadFile( (Standard_CString)file.toLatin1().constData() );
+    int status = Reader.ReadFile(aFilePath.ToCString() );
 
     if ( status == IFSelect_RetDone )
     {
@@ -422,9 +424,9 @@ Handle(TopTools_HSequenceOfShape) Translate::importIGES( const QString& file )
 Handle(TopTools_HSequenceOfShape) Translate::importSTEP( const QString& file )
 {
 	Handle(TopTools_HSequenceOfShape) aSequence;
-
+  TCollection_AsciiString  aFilePath = file.toUtf8().data();
 	STEPControl_Reader aReader;
-	IFSelect_ReturnStatus status = aReader.ReadFile( (Standard_CString)file.toLatin1().constData() );
+	IFSelect_ReturnStatus status = aReader.ReadFile( aFilePath.ToCString() );
 	if ( status == IFSelect_RetDone )
     {
 	    //Interface_TraceFile::SetDefault();