Модераторы: xvr

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как скопировать файл? 
:(
    Опции темы
phpsc
Дата 10.1.2011, 00:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 234
Регистрация: 22.11.2010

Репутация: нет
Всего: 0



Как скопировать файл?

умею только через system("cp file file");
но это не подходит =(
--------------------
Социальная сеть
PM MAIL   Вверх
boostcoder
Дата 10.1.2011, 00:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 16
Всего: 110



PM WWW   Вверх
phpsc
Дата 10.1.2011, 01:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 234
Регистрация: 22.11.2010

Репутация: нет
Всего: 0



Код

boost::filesystem::copy_file("../index.php","index.php");

при компиляции debian выдает:
Код

error: ‘boost’ has not been declared

что можно сделать чтобы boost работал?

установил apt-get install boost-build, все равно та же ошибка.

Это сообщение отредактировал(а) phpsc - 10.1.2011, 01:17
--------------------
Социальная сеть
PM MAIL   Вверх
boostcoder
Дата 10.1.2011, 01:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 16
Всего: 110



Цитата

apt-get install libboost-dev


но ради единственной функции не стоит привязывать проект к boost ;)
PM WWW   Вверх
phpsc
Дата 12.1.2011, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 234
Регистрация: 22.11.2010

Репутация: нет
Всего: 0



boostcoder, ошибка все равно появляется...

Нужно еще в include записать...но как? подскажите пожалуйста...
--------------------
Социальная сеть
PM MAIL   Вверх
phpsc
Дата 12.1.2011, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 234
Регистрация: 22.11.2010

Репутация: нет
Всего: 0



Код

#include<boost/filesystem.hpp>

но теперь выдает следующее:
Код

/tmp/ccCw3iWD.o: In function `boost::enable_if<boost::filesystem::is_basic_path<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >, void>::type boost::filesystem::copy_file<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >(boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> const&, boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> const&)':
daemon.cpp:(.text._ZN5boost10filesystem9copy_fileINS0_10basic_pathISsNS0_11path_traitsEEEEENS_9enable_ifINS0_13is_basic_pathIT_EEvE4typeERKS7_SC_[boost::enable_if<boost::filesystem::is_basic_path<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >, void>::type boost::filesystem::copy_file<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >(boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> const&, boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> const&)]+0x40): undefined reference to `boost::filesystem::detail::copy_file_api(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
collect2: ld returned 1 exit status



--------------------
Социальная сеть
PM MAIL   Вверх
boostcoder
Дата 12.1.2011, 20:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 16
Всего: 110



Цитата

-lboost_filesystem

PM WWW   Вверх
panter
Дата 12.1.2011, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 10.1.2011
Где: Санкт-Петербург

Репутация: нет
Всего: нет



Ну вы извращенцы, ради такого буст тянуть. Вы еще Кьют притяните. 
Функция копирования файла пишется минут 5.

Это сообщение отредактировал(а) panter - 12.1.2011, 20:20
PM MAIL ICQ Skype Jabber   Вверх
boostcoder
Дата 12.1.2011, 20:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 16
Всего: 110



Цитата(panter @  12.1.2011,  20:19 Найти цитируемый пост)
Функция копирования файла пишется минут 5.

зОчем? smile 
она уже написана. вот только ТС`у хочется тащить за собой буст smile 
PM WWW   Вверх
phpsc
Дата 12.1.2011, 21:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 234
Регистрация: 22.11.2010

Репутация: нет
Всего: 0



В начале boostcoder дал лучшее решение
очередной велосипед.
Код: c++
Код

#include <fstream>
#include <string>
#include <stdexcept>

void copy_file(const std::string& src, const std::string& dst) {
   std::ifstream in(src.c_str(), std::ios::binary);
   if ( !in ) {
      throw std::runtime_error("can`t open file: " + src);
   }
   std::ofstream out(dst.c_str(), std::ios::binary|std::ios::trunc);
   if ( !out ) {
      throw std::runtime_error("can`t create file: " + dst);
   }
   out << in.rdbuf();
}

int main(int argc, const char** argv)  {
   try {
      copy_file("infile.dat", "outfile.dat");
   } catch (const std::exception& e) {
      std::cout << e.what() << std::endl;
   }

   return 0;
}
http://forum.try-catch.ru/index.php?topic=204.0

С boost плохо, т.к. нужно еще будет устанавливать его там где программа будет запускаться.

Это сообщение отредактировал(а) phpsc - 12.1.2011, 21:30
--------------------
Социальная сеть
PM MAIL   Вверх
borisbn
Дата 13.1.2011, 01:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: нет
Всего: 135



Цитата(phpsc @  12.1.2011,  21:29 Найти цитируемый пост)
С boost плохо, т.к. нужно еще будет устанавливать его там где программа будет запускаться.

первый раз слышу. proff-link, please


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
boostcoder
Дата 13.1.2011, 01:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 16
Всего: 110



Цитата(borisbn @  13.1.2011,  01:17 Найти цитируемый пост)
первый раз слышу.

при динамической линковке - да.
но существует статическая линковка. но все равно не нужно тащить в проект слона ;)
PM WWW   Вверх
phpsc
Дата 13.1.2011, 01:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 234
Регистрация: 22.11.2010

Репутация: нет
Всего: 0



а я даже не знал что есть динамическая и статические линковки..я скомпилил...попробовал запустить....затребовал установку boost .. пришлось отказать в пользу "велосипеда" )
--------------------
Социальная сеть
PM MAIL   Вверх
borisbn
Дата 13.1.2011, 08:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: нет
Всего: 135



boostcoder, а при динамической линковке нельзя просто подкинуть нужные библиотеки к программе, как в windows'е ? 


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
panter
Дата 13.1.2011, 10:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 10.1.2011
Где: Санкт-Петербург

Репутация: нет
Всего: нет



borisbn, в Линуксе это сложнее. Да и распространять проги в Линуксе принято другим способом.
PM MAIL ICQ Skype Jabber   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0928 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.