如何获取打开的文件路径

How to Get Open File Path

本文关键字:文件 路径 何获取 获取      更新时间:2023-10-16

嗨,有人能帮我获取打开的文件路径吗。例如:如果我打开一个保存在C:\NewFolder\Hello.txt位置的文件,我需要从C++代码中获得相同的文件路径。请帮帮我。。

您可以使用fstream的open()函数打开驱动器上的文件,然后使用getline()读取文件。

在Windows上,您需要确保对文件路径中的反斜杠进行转义,例如C:\newFolder将被编译器解释为"C:"+newline+"ewFolder",因此您需要编写C:\\newFolder。

示例:

#include <fstream>
// [...]
ifstream in_file;
in_file.open("C:\NewFolder\Hello.txt");
if (in_file.good()) { // check to make sure the file was opened correctly
    char outbuf[1024];
    while (in_file.getline(outbuf,1024)) {
        // do something with outbuf
    }
}

如果你正在尝试进行大量的文件I/O,你可能还想看看boost::filesystem,它有一定的初始学习曲线,但一旦掌握了窍门,就可以很容易地处理文件/目录

首先以这种方式在头中声明fstream库。

#include <fstream>

然后为输入流创建一个对象。

ifstream read ;

以这种方式打开文件。

read.open ("C:NewFolderHello.txt") ;

我想这就是你想说的开放文件路径。我觉得最好把文本文件放在同一个目录里。

不清楚您在问什么。

如果你想知道你在哪里保存了一个文件,那么,你保存了它,不需要知道路径了。在这种情况下,答案只是"记住你把它保存在哪里"。如果你想知道你打开的文件的路径,这同样适用。你打开了它,你怎么能不知道路径?

如果要允许用户在Windows上直观地选择文件,请查找GetOpenFileName