diff --git a/FileIO/CMakeLists.txt b/FileIO/CMakeLists.txt
index 6c9d6c4b9856763fb6ece580b00a3110bf86227e..0f4f665edb519c41b16942e77fad22227eddead3 100644
--- a/FileIO/CMakeLists.txt
+++ b/FileIO/CMakeLists.txt
@@ -19,6 +19,8 @@ SET( SOURCES
 	TINInterface.cpp
 	Writer.h
 	Writer.cpp
+	writeMeshToFile.h
+	writeMeshToFile.cpp
 )
 
 GET_SOURCE_FILES(SOURCES_LEGACY Legacy)
diff --git a/FileIO/writeMeshToFile.cpp b/FileIO/writeMeshToFile.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..d519d1e1e96d1144a9f519c01f60b3dbf38ddebf
--- /dev/null
+++ b/FileIO/writeMeshToFile.cpp
@@ -0,0 +1,41 @@
+/**
+ * \copyright
+ * Copyright (c) 2012-2014, OpenGeoSys Community (http://www.opengeosys.org)
+ *            Distributed under a Modified BSD License.
+ *              See accompanying file LICENSE.txt or
+ *              http://www.opengeosys.org/project/license
+ */
+
+#include "writeMeshToFile.h"
+
+// ThirdParty/logog
+#include "logog/include/logog.hpp"
+
+// BaseLib
+#include "FileTools.h"
+#include "StringTools.h"
+
+// MeshLib
+#include "Mesh.h"
+
+// FileIO
+#include "Legacy/MeshIO.h"
+#include "FileIO/VtkIO/VtuInterface.h"
+
+namespace FileIO
+{
+void writeMeshToFile(const MeshLib::Mesh &mesh, const std::string &file_name)
+{
+	if (BaseLib::hasFileExtension("msh", file_name))
+	{
+		Legacy::MeshIO meshIO;
+		meshIO.writeToFile(file_name);
+	} else if (BaseLib::hasFileExtension("vtu", file_name)) {
+		FileIO::VtuInterface writer(&mesh);
+		writer.writeToFile(file_name);
+	} else {
+		ERR("writeMeshToFile(): Unknown mesh file format in file %s.", file_name.c_str());
+	}
+}
+
+} // end namespace FileIO
diff --git a/FileIO/writeMeshToFile.h b/FileIO/writeMeshToFile.h
new file mode 100644
index 0000000000000000000000000000000000000000..bab68d434ddb88a7f1d00fbf7126c61557dfcda2
--- /dev/null
+++ b/FileIO/writeMeshToFile.h
@@ -0,0 +1,24 @@
+/**
+ * \copyright
+ * Copyright (c) 2012-2014, OpenGeoSys Community (http://www.opengeosys.org)
+ *            Distributed under a Modified BSD License.
+ *              See accompanying file LICENSE.txt or
+ *              http://www.opengeosys.org/project/license
+ */
+
+#ifndef WRITEMESHTOFILE_H_
+#define WRITEMESHTOFILE_H_
+
+#include <string>
+
+namespace MeshLib
+{
+class Mesh;
+}
+
+namespace FileIO
+{
+void writeMeshToFile(const MeshLib::Mesh &mesh, const std::string &file_name);
+}
+
+#endif // WRITEMESHTOFILE_H_