Форум программистов, компьютерный форум CyberForum.ru

Как переименовать файл - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
flasher167
4 / 4 / 0
Регистрация: 17.10.2012
Сообщений: 174
11.05.2013, 16:16     Как переименовать файл #1
вот кусочек моего кода
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
int open()//функция открытия файла
{
        system("cls");
        redactor red;
        cout<<"введите имя файла file.txt";
        char name[25]="";
        cout<<endl;
        cin>>name;
        cout<<endl;
        char a;
        ifstream in;
        in.open(name);// открытие файла
        if(!in)
        {
            cout<<"Файл для чтения "<<name<<" не открыт"<<endl; 
            return 1;
        }
        while(!in.eof())
        {
            in.get(a);
            cout<<a;
        }
        cout<<"\n\nВернуться назад = 0"<<endl;
 
            
        while(1)
            {
                switch (_getch())
                {
                case '0':
                    red.menu_redactor();
                    break;
                }
                break;
            } return 0;
}
изначально я прошу открыть пользователя файл file.txt
нужно написать другую функцию что бы она могла переименовать этот файл file.txt в любой другой
и потом если я захочу открыть этот файл то показывало пользователю
C++
1
cout<<"введите имя файла \тут новое имя/";
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ev[G]eN
11.05.2013, 16:18
  #2

Не по теме:

"Введите" пишется слитно

stima
430 / 285 / 16
Регистрация: 22.03.2011
Сообщений: 929
Завершенные тесты: 1
11.05.2013, 16:36     Как переименовать файл #3
чистым с++ никак.
WinApi CreateFile, RenameFile, DeleteFIle (#include <windows.h>)
flasher167
4 / 4 / 0
Регистрация: 17.10.2012
Сообщений: 174
11.05.2013, 16:46  [ТС]     Как переименовать файл #4
Цитата Сообщение от stima Посмотреть сообщение
чистым с++ никак.
WinApi CreateFile, RenameFile, DeleteFIle (#include <windows.h>)
а можно по подробней..
dr.curse
 Аватар для dr.curse
386 / 342 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
11.05.2013, 16:46     Как переименовать файл #5
stima, но вообщето в stdio есть функции rename и remove
http://www.cplusplus.com/reference/cstdio/rename/
http://www.cplusplus.com/reference/cstdio/remove/
flasher167
4 / 4 / 0
Регистрация: 17.10.2012
Сообщений: 174
11.05.2013, 16:53  [ТС]     Как переименовать файл #6
Цитата Сообщение от aram_gyumri Посмотреть сообщение
stima, но вообщето в stdio есть функции rename и remove
http://www.cplusplus.com/reference/cstdio/rename/
http://www.cplusplus.com/reference/cstdio/remove/
а можно рабочим примером ... как у меня...
dr.curse
 Аватар для dr.curse
386 / 342 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
11.05.2013, 16:54     Как переименовать файл #7
flasher167, вот из ссылки которую я дал
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* rename example */
#include <stdio.h>
 
int main ()
{
  int result;
  char oldname[] ="oldname.txt";
  char newname[] ="newname.txt";
  result= rename( oldname , newname );
  if ( result == 0 )
    puts ( "File successfully renamed" );
  else
    perror( "Error renaming file" );
  return 0;
}
flasher167
4 / 4 / 0
Регистрация: 17.10.2012
Сообщений: 174
11.05.2013, 16:56  [ТС]     Как переименовать файл #8
Цитата Сообщение от aram_gyumri Посмотреть сообщение
flasher167, вот из ссылки которую я дал
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* rename example */
#include <stdio.h>
 
int main ()
{
  int result;
  char oldname[] ="oldname.txt";
  char newname[] ="newname.txt";
  result= rename( oldname , newname );
  if ( result == 0 )
    puts ( "File successfully renamed" );
  else
    perror( "Error renaming file" );
  return 0;
}
но мне нужно что бы пользователь сам ввел новое имя
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
11.05.2013, 17:11     Как переименовать файл #9
Цитата Сообщение от flasher167 Посмотреть сообщение
но мне нужно что бы пользователь сам ввел новое имя
Цитата Сообщение от flasher167 Посмотреть сообщение
C++
1
char newname[] ="newname.txt";
делаем, к примеру:
C++
1
2
3
char newname[25];
gets(newname);
result= rename( oldname , newname );
и т.д.
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
11.05.2013, 17:31     Как переименовать файл #10
Очень просто
C++
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
 
int main()
{
    string sold = "old.txt";
    string snew = "new.txt";
 
    string s;
    
    s = "mv " + sold + " " + snew;
    system(s.c_str());
}
flasher167
4 / 4 / 0
Регистрация: 17.10.2012
Сообщений: 174
11.05.2013, 18:08  [ТС]     Как переименовать файл #11
Цитата Сообщение от programina Посмотреть сообщение
Очень просто
C++
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
 
int main()
{
    string sold = "old.txt";
    string snew = "new.txt";
 
    string s;
    
    s = "mv " + sold + " " + snew;
    system(s.c_str());
}
mv не является внутренней или внешней командой...
stima
430 / 285 / 16
Регистрация: 22.03.2011
Сообщений: 929
Завершенные тесты: 1
11.05.2013, 18:23     Как переименовать файл #12
2aram_gyumri Не знал.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.05.2013, 19:15     Как переименовать файл
Еще ссылки по теме:

fstream (удалить файл каким то методом и переименовать) C++
C++ Как переименовать файлы в папке
C++ Как переименовать проект в codeblocks

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
11.05.2013, 19:15     Как переименовать файл #13
Цитата Сообщение от flasher167 Посмотреть сообщение
mv не является внутренней или внешней командой..
flasher167, ставь линукс

Добавлено через 2 минуты
В виндовсе вместо mv можно юзать ren

flasher167, то есть нужно заменить на:
C++
s = "ren " + sold + " " + snew;
Yandex
Объявления
11.05.2013, 19:15     Как переименовать файл
Ответ Создать тему
Опции темы

Текущее время: 06:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru