Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Работа с файлами в C++  (Прочитано 10188 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн iMale

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Работа с файлами в C++
« : 04 Ноября 2010, 22:51:23 »
Как получить список файлов и директорий(папок) в C++ под Linux?
Хедера io.h в Linuxе нет, и функция findfirst() и findnext() соответственно отпадают.
Подскажите пожалуста - уже весь гугль перерыл и ненашел, очень надо.

Оффлайн Not eXist

  • Активист
  • *
  • Сообщений: 916
    • Просмотр профиля
Re: Работа с файлами в C++
« Ответ #1 : 04 Ноября 2010, 23:20:31 »
Как получить список файлов и директорий(папок) в C++ под Linux?
Хедера io.h в Linuxе нет, и функция findfirst() и findnext() соответственно отпадают.
Подскажите пожалуста - уже весь гугль перерыл и ненашел, очень надо.
Посмотреть исходники ls ?

Оффлайн Упс

  • Старожил
  • *
  • Сообщений: 3231
    • Просмотр профиля
Re: Работа с файлами в C++
« Ответ #2 : 05 Ноября 2010, 00:39:12 »
Цитировать
Хедера io.h в Linuxе нет
/usr/include/sys/io.h  :)
xUbuntu 12.04

Оффлайн Sova777

  • Участник
  • *
  • Сообщений: 208
    • Просмотр профиля
    • Несколько слов о NetBeans C/C++ Pack'е
Re: Работа с файлами в C++
« Ответ #3 : 05 Ноября 2010, 01:44:12 »
readdir
Пользователь OpenSolaris 2008.11, Ubuntu 8.10, Windows XP. Mac OS X не нравится, стараюсь не использовать.

Оффлайн inkblack

  • Старожил
  • *
  • Сообщений: 1216
    • Просмотр профиля
Re: Работа с файлами в C++
« Ответ #4 : 05 Ноября 2010, 02:00:13 »
...
Посмотреть исходники ls ?

А ls на плюсах написан, не на чистом c?
Делюсь знаниями, но их у меня мало!

Оффлайн iMale

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Работа с файлами в C++
« Ответ #5 : 05 Ноября 2010, 07:44:49 »
Спасибо за подсказки.
Вчера ночью разбирался - тоже находил про dirent.h и readdir.
Но несмог разобраться как работает  :-[
Может у когото есть опыт в использовании, покажите пример вывода через cout<<
на екран списка папок директории текущего проекта.
Очень нужно, пожалуйста  :D

Оффлайн HolyMacaroni

  • Участник
  • *
  • Сообщений: 210
  • мегавольт
    • Просмотр профиля
Re: Работа с файлами в C++
« Ответ #6 : 05 Ноября 2010, 08:27:00 »
погуглил и нашел вот это, сам еще не проверял:) ща попробую

#include < sys/types.h >
#include < dirent.h >

int main(void)
{
DIR *dir = opendir(".");
if(dir)
{
struct dirent *ent;
while((ent = readdir(dir)) != NULL)
{
puts(ent- >d_name);
}
}
else
{
fprintf(stderr, "Error opening directory\n");
}
return 0;
}



попробовал вот рабочая:)))) подключил только недостающие библиотеки:
#include <sys/types.h>
#include <dirent.h>
#include<iostream>
#include<stdio.h>


int main(void)
{
    DIR *dir = opendir(".");
    if(dir)
    {
        struct dirent *ent;
        while((ent = readdir(dir)) != NULL)
        {
            puts(ent->d_name);
        }
    }
    else
    {
        fprintf(stderr, "Error opening directory\n");
    }
    return 0;
}

« Последнее редактирование: 05 Ноября 2010, 08:35:36 от HolyMacaroni »
Asus X50N Ubuntu 10.04

Оффлайн Not eXist

  • Активист
  • *
  • Сообщений: 916
    • Просмотр профиля
Re: Работа с файлами в C++
« Ответ #7 : 05 Ноября 2010, 08:35:11 »
...
Посмотреть исходники ls ?

А ls на плюсах написан, не на чистом c?
Да разница там не велика будет, а как пример - вполне подойдёт. Не всё ж готовенькое получать.

 

Страница сгенерирована за 0.019 секунд. Запросов: 22.