私はlsコマンドの動作をシミュレートしようとしています。現在のディレクトリの内容を印刷するC++
私は
DIR *dir;
dirent *pdir;
dir=opendir(".");
while((pdir=readdir(dir)))
{
cout<< pdir->d_name << endl;
}
closedir(dir);
私の現在のディレクトリに2つのファイル、Screen.cppとのa.outが含まれているdirent.hライブラリを使用して簡単なコードを作成しました。私は、ソート/格納することなく、その達成するためにどのように任意の簡単な方法がありますls -la
コマンドは、しかし、このコードは
.
Screen.cpp
..
a.out
のようにそれを出力
.
..
a.out
Screen.cpp
を、たとえばうとして、順番にそれを印刷するために、このコードを希望いくつかのコンテナのリスト?
'readdir'は返品の順序付けについて保証していません。 (iノード、ディスクの場所、追加された日付など) – vu1p3n0x
UNIXシステムコマンドを使用することはできません – Darlyn
それほど難しくありません。ちょっとした作業で、 'readdir'をイテレータに変換できます。次に、並べ替えを読み取り、エントリを印刷するために合計3行になります。 –