gpt4 book ai didi

c++ - QFile::open 以 unicode 文件名失败

转载 作者:行者123 更新时间:2023-11-30 04:23:17 27 4
gpt4 key购买 nike

我想用 QFile::Open 打开一个文件,我的文件名是 unicode:

           QString fname(QFile::decodeName("D:/أحدالأنشطة.txt"));
QFile qFile(fname);

bool b=qFile.open(QIODevice::ReadOnly);
if(b)
{
FILE* filedesc = fdopen(qFile.handle(), "rb");
if(filedesc!=NULL)
{
char* nb=(char*)malloc(2*sizeof(char));
qDebug()<<"opened ";
size_t size=fread(nb,sizeof(char),2,filedesc);
fclose(filedesc);
qDebug()<<"filedesc closed size "<<size<<"nb "<<QString::fromAscii(nb,2);
nb=NULL;
free(nb);

}else qDebug()<<"filedesc failed error"<<strerror(errno);


}else
qDebug()<<"qFile failed error"<<strerror(errno);

它失败了,我得到:

qFile failed   error No error 

我们将不胜感激。

最佳答案

如果数据在 WCHAR 数组中而不是只使用 QString filename((QChar*) yourWcharData);

关于c++ - QFile::open 以 unicode 文件名失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13413453/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com