diff --git a/src/plugins/cpptools/cppfilesettingspage.cpp b/src/plugins/cpptools/cppfilesettingspage.cpp
index 2076aaca2ad5d83cfc74049e7d9969e915a83fd3..59f18ea304ab9966c941b1f55e87b046e1a74d05 100644
--- a/src/plugins/cpptools/cppfilesettingspage.cpp
+++ b/src/plugins/cpptools/cppfilesettingspage.cpp
@@ -45,6 +45,7 @@
 #include <QtCore/QCoreApplication>
 #include <QtCore/QDate>
 #include <QtCore/QLocale>
+#include <QtCore/QTextCodec>
 #include <QtCore/QTextStream>
 
 #include <QtGui/QFileDialog>
@@ -208,7 +209,13 @@ QString CppFileSettings::licenseTemplate(const QString &fileName, const QString
         qWarning("Unable to open the license template %s: %s", qPrintable(path), qPrintable(file.errorString()));
         return QString();
     }
-    QString license = QString::fromUtf8(file.readAll());
+
+    QTextCodec *codec = Core::EditorManager::instance()->defaultTextEncoding();
+    QTextStream licenseStream(&file);
+    licenseStream.setCodec(codec);
+    licenseStream.setAutoDetectUnicode(true);
+    QString license = licenseStream.readAll();
+
     parseLicenseTemplatePlaceholders(&license, fileName, className);
     // Ensure exactly one additional new line separating stuff
     const QChar newLine = QLatin1Char('\n');