我正在尝试编写简单的TCP客户端和服务器程序。服务器程序需要将其默认目录中的文件列表发送到客户端程序。然后客户端选择一个文件,服务器返回该文件的内容。我有所有基本连接,但我坚持如何获取文件列表到客户端。有任何想法吗? TIA
答案 0 :(得分:0)
获取目录中的文件列表目前非常依赖于系统:
opendir()
和readdir()
及相关功能。 FindFirstFile()
, FindNextFile()
, and FindClose()
或类似内容(如FindFirstFileEx()
)幸运的是boost::filesystem
,它提供了便携式directory iterator。
好消息是filesystem
将很快加入C ++标准库。一些编译器,例如MSVC和gcc,已经将它作为实验扩展提供,并且它非常接近于提升:
path dir { "." };
for (auto& p : recursive_directory_iterator(dir)) {
cout << "Sending "<<p<<endl; // dir_entry using recursive browsing
//... todo: send file
}