我用c编写了一个代码,用于文件处理。文件名中包含一些德语字符。此代码在 Windows 上运行良好。但它在 Linux 中不起作用。fopen 给出“无法打开文件”错误。我检查了文件路径,文件存在那里。另外,我对该文件夹具有读写权限。
代码如下。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
const char *fileName = "/users/common/haëlMünchen.txt";
FILE * pFile;
char errorMessage[256];
pFile = fopen (fileName,"r");
if (pFile != NULL)
{
fprintf (stdout,"fopen example",errorMessage);
fclose (pFile);
}
else
{
sprintf(errorMessage, "Could not open file %s", fileName);
fprintf(stdout, "%s\n", errorMessage);
}
return 1;
}
对此有任何意见吗?