创建名为“абцде”的文件时 文件名是用象形文字
写的const QByteArray data = "someData"; // some Data
QString fileName = "абцде.txt"; // fileName
QFile localFile(fileName.toUtf8());
localFile.open(QIODevice::WriteOnly);
localFile.write(data);
localFile.close();
答案 0 :(得分:1)
这些代码行构成了nternationalization上的qt man 可以帮助。 (QString最初使用Unicode)。
/**
* Represents an asynchronous operation.
*
* @param <T> the type of the result of the operation
* @deprecated {@code Task} has been deprecated in favor of
* <a href="https://googleapis.github.io/api-common-java/1.1.0/apidocs/com/google/api/core/ApiFuture.html">{@code ApiFuture}</a>.
* For every method x() that returns a {@code Task<T>}, you should be able to find a
* corresponding xAsync() method that returns an {@code ApiFuture<T>}.
*/
您可能需要使用编码(&#34; Windows-1251&#34;),这是一种强力方法。
答案 1 :(得分:0)
如果您的来源是UTF8编码,那么您应该使用此(Qt Documentation)
QString fileName = QString::fromUtf8( "абцде.txt" ); // fileName
如果您的来源有其他编码,那么您可以选择其他功能,例如QString::fromLocal8Bit
。