我在哪里放置程序要读取的文件名
Where do I put the filename for the program to read?
我有一个C++文件,我想从中学习,但我在尝试打开包含要读取的数据的文本文件时遇到困难。我正在尝试弄清楚将文本文件放在哪里。
我的代码是:
#include <fstream>
#include <cstdlib>
using namespace std;
void rFile(string argvFile);
void Init(int i, Chord& newChord);
int main(int argc, char* argv[]) {
if (argc != 2) {
cout << "INCORRECT SYNTAX!" << endl;
} else {
**//I changed the this to rFile("text.txt"); but error too.**
rFile(argv[1]);
}
}
void rFile(string argvFile) {
Chord newChord;
string inLine;
ifstream inFile;
**// I got an error trying to put the text file name after argvFile.c_str("text.txt"));**
inFile.open(argvFile.c_str());
if (inFile.is_open())
while (inFile.good()) {
getline(inFile, inLine);
}
} else {
cout << "ERROR! FOUND NOT FOUND!" << endl;
}
}
有人可以开导我吗?
此代码从程序参数中读取文件名,
rFile(argv[1]);
argv 是在程序执行期间传递给程序的参数数组,例如运行
./prog a b c
分配
argv[1] = "a"
argv[2] = "b"
argv[3] = "c"
第 0 个元素 (argv[0]) 包含程序名称,因此在本例中
argv[0] = "prog"
所以在你的程序的情况下 - 一旦你把它编译到 prog,你就运行它 (Unix)
./prog PATH_TO_FILE
或(窗口)
prog.exe PATH_TO_FILE
相关文章:
- 为什么文件名被设置为一个点,而不是在读取矢量中的文件名时
- C++ 从标准输入读取文件名
- 输入文件名并读取文本
- 使用 C++ 读取由 txt 文件名引用的特定列的值
- 如何在C 中读取具有前缀和时间戳为文件名的文件
- 在目录中读取所有文件名
- 如何从文本文件中读取文件名列表并用C++打开它们
- 使用 c++ 读取音乐文件名
- 我在哪里放置程序要读取的文件名
- 如果从文件中读取,则无法按文件名运行进程
- 如何读取目录中上次修改的文件的文件名
- 从命令行读取文件名并在visualstudio中打开
- 从文件名读取日期
- 从命令行读取文件名,并在我的文件中使用它
- 读取非ascii文件名的文件
- 打开并读取在运行时指定文件名的文件
- 在c++中读取文件名的一部分
- 如何从文件夹中读取文件?文件夹包含不同类型的文件名
- 我应该如何读取结构FILE_NOTIFY_INFORMATION文件名
- 如何将目录的特定文件名读取到数组中