如何从本地目录路径中读取文件

时间:2012-01-11 13:07:33

标签: c

我有一个函数可以读取文件并执行转换部分。

fp=fopen("newfile.txt","r");

这里我已经在项目文件中复制了这个newfile.txt并在VC ++ 2008 IDE中进行了编译。它工作正常

我想从本地驱动器目录路径读取该文件。是否可以从本地drive.how读取文件以提及路径。如果是这样,请提及任何示例。

还有一件事如果我想要读取该特定文件夹中的所有文件而不更改上述代码中的文本文件名。建议我做任何事情。

我不想在代码中手动更改文件名

2 个答案:

答案 0 :(得分:3)

您可以使用文件的绝对路径:

FILE* fp = fopen("c:\\your_dir\\your_file.txt", "r");
if(fp) {
   // do something
   fclose(fp);
}

或相对路径,假设您的文件位于c:/etc且您的可执行文件位于c:/etc/executables

FILE* fp = fopen("..\\your_file.txt", "r");
if(fp) {
   // do something
   fclose(fp);
}

答案 1 :(得分:0)

我认为您可以使用第一个程序参数。它是一个包含可执行文件路径的字符串。您可以使用int main(int argc, char *args[])代替int main()来访问它。 args [0]包含您需要的内容。只需对其取一个子字符串,即可获取路径并将其与您的文件名连接起来。