首页 > 解决方案 > 无法在C中打开二进制文件

问题描述

我有一个名为签名的二进制文件,我尝试根据用户输入在我的程序中打开它。我意识到当我输入确切的文件名时它实际上并没有打开,我不知道为什么。

这是我为测试此事而编写的代码:

char buffer[1024];

fgets(buffer, 1024, stdin);

FILE* file = fopen(buffer, "rb");
if(file){
    printf("worked");
    fclose(file);
}

当我输入“签名”时,文件仍然没有打开。但是,如果我执行以下操作:

FILE* file = fopen("signatures","rb"); 

它实际上确实打开了。可能是什么问题呢?

我在以 Windows 10 作为主机的 virtualbox 虚拟机上的 ubuntu 18.04 上运行它。

标签: cubuntubinaryfiles

解决方案


推荐阅读