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

Выделить из строки с полным путем к файлу само имя файла без расширения - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ ЗАмена букв, части слов http://www.cyberforum.ru/cpp-beginners/thread600999.html
Дана программа нужно сделать тоже самое но уже вместо string использовать char помогите сделать.. могу получить автром.. плз выручайте Выкладывайте задание в текстовом виде. Ссылка на скан страницы с заданием удалена.
C++ Матрица, удалить последний столбец Дана матрица размера M × N. Удалить ее последний столбец, содер-жащий только отрицательные элементы. Если требуемых столбцов нет, то вывести матрицу без изменений. http://www.cyberforum.ru/cpp-beginners/thread600985.html
Вывести порядок матрицы и ее элемент C++
Даны два целых числа I, J и файл вещественных чисел, содержащий не-нулевую часть верхнетреугольной матрицы (по строкам). Вывести порядок матрицы и ее элемент, расположенный в I-й строке и J-м столбце (строки и столбцы нумеруются от 1). Если требуемый элемент находится в нулевой части матрицы, то вывести 0; если элемент отсутствует, то вывести –1.
Определить типы и функции C++
Всем привет! Помогите пожалуйста решить задачу на С++. Очень срочно нужно... - определить типы и функции; - в функции main() реализовать демонстрацию работы созданных функций; Задание. Имеется элемент стека (дисциплина обслуживания LIFO):struct Stack { char * data; //указатель на данные Stack * prev; //указатель на предыдущий элемент } * top; //указатель на вершину стека
C++ Поменять местами левую и правую половины матрицы http://www.cyberforum.ru/cpp-beginners/thread600969.html
Помогите с матрицей плс Matrix56. Дана матрица размера M × N (N — четное число). Поменять местами левую и правую половины матрицы.
C++ Описать рекурсивную функцию Palindrome(S) логического типа Recur 13. Описать рекурсивную функцию Palindrome(S) логического типа, возвращающую True, если строка S является палиндромом (то есть читается одинаково слева направо и справа налево), и False в противном случае. Оператор цикла в теле функции не использовать. Вывести значения функции Palindrome для пяти данных строк. что не так ? #include <iostream> bool Palindrom(const std::string &s) { ... подробнее

Показать сообщение отдельно
The_Immortal
1548 / 484 / 8
Регистрация: 04.04.2009
Сообщений: 1,891
08.06.2012, 22:53     Выделить из строки с полным путем к файлу само имя файла без расширения
Zhalair,

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
#include <iostream>
#include <conio.h>
#include <string>
using namespace std;
int main()
{
    string s="D:\\Practis\\Proverka\\File.txt";
    int count=0; // счетчик, определяющий сначала длину расширения файла, 
    //а потом длину имени самого файла
 
    for(int i=s.length()-1;i>-1;i--) //в i помещаем длину всей строки (пути к файлу); 
    //пока не конец строки; переходим к предыдущему символу в строке
    {
        if(s[i]!='.') count++; // ищем ".", если нашли, то выходим из цикла 
        // и получаем в count длину расширения, в данном случае это "txt", т.е. 3
        else break;
    }
    s.erase(s.length()-count-1,count+1); // удаляем ".txt" из нашего пути,
    //начиная с "D:\\Practis\\Proverka\\File" 
    count=0; 
    for(int i=s.length()-1;i>-1;i--)  //теперь аналогично работаем, 
    // но уже с урезанной строкой, т.е. с "D:\\Practis\\Proverka\\File" 
    {
        if(s[i]!='\\') count++; //последовательно доходим до первых "\\", 
        //в count будет уже длина имени файла, т.к двигаемся с конца
        else break;
    }
    s.erase(0,s.length()-count); //удаляем с самого начала строки
    //и до начала имени файла, т.е. сносим "D:\\Practis\\Proverka\\"
    cout<<s<<endl;
    getch();
    return 0;
}
Ну на всякий случай

Единственное, я в комментах условно двойной слэш указывал, т.к. на самом деле работа идет с одинарным. Ну я думаю, что Вы в курсе этого
 
Текущее время: 17:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru