Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
nanshakov
Студент :)
891 / 324 / 10
Регистрация: 29.01.2011
Сообщений: 1,680
#1

Заменить символ ':' на символ точки - C++

10.06.2012, 00:40. Просмотров 566. Ответов 2
Метки нет (Все метки)

Прошу помочь доработать код.
Есть код созалние папки,имя которой - текушая дата.Но в стандартном выводе даты есь символ ":" ,который не может быть использован в качестве имени папки.Хочу заменить этот символ на символ точки.Посмотрел поиск,но из того,что нашел,не смог переделать пример.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "stdafx.h"
#include <stdio.h>
#include <time.h>
#include <conio.h>
#include <iostream>
#include <windows.h>
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    time_t seconds = time(NULL);
    tm* timeinfo = localtime(&seconds);
if (CreateDirectory(asctime(timeinfo) ,NULL))
    cout << "directory create" << endl;
else
    cout << "error create directory" << endl;
    getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.06.2012, 00:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Заменить символ ':' на символ точки (C++):

Вывести строки, в которых символ «*» встречается не менее 2 раз и заменить символ «*» на символ «_» - C++
День добрый. Имеется условие лабы. Написать программу, в которой с клавиатуры вводится до 10 символьных строк. Вывести строки, в...

Сформировать список символов, оканчивающийся точкой. Заменить в списке символ “A” на символ “0” - C++
1. Сформировать список из целых чисел. После каждого отрицательного элемента вставить число 3. 2. Сформировать список символов,...

Заменить в тексте символ, который вводится с клавиатуры на символ * - C++
Помогите решить в Borland c++ Если можно еще блок-схему Задан тест. Заменить в этом тексте символ, который вводится с лавиатуры на...

Считать текст из файла и заменить символ А на символ В - C++
Нужно написать программу, которая считывает текст из файла и заменяет символ А на символ В. Можете помочь?

Каждый символ строки заменить на следующий за ним, а последний символ строки заменяеть первым - C++
я написал код но не могу разобраться. вот дано : ---------------------------------------------------------- В текстовом файле fin.txt...

Заменить в каждой сроке один заданный символ на другой заданный символ - C++
ПОМОГИТЕ РЕШИТЬ ЗАДАЧУ)) НА ЯЗЫКЕ С!!!!!!! Даны 2 строки до 80 символов. Необходимо Заменить в каждой сроке один заданный символ на...

2
novi4ok
551 / 504 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
10.06.2012, 01:02 #2
а что если по-простому?

C++ (Qt)
1
2
3
4
5
6
7
8
tm* timeinfo = localtime(&seconds);
 
int size = ::strlen (timeinfo);
for (int i = 0; i < size; i++){
   if (*(timeinfo+i) == ':'){
    *(timeinfo+i) = '.';
   }
}
1
nanshakov
Студент :)
891 / 324 / 10
Регистрация: 29.01.2011
Сообщений: 1,680
10.06.2012, 10:25  [ТС] #3
novi4ok, Спасибо за ответ,но не катит.Студийка выдает ошибки.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int _tmain(int argc, _TCHAR* argv[])
{
    time_t seconds = time(NULL);
    tm* timeinfo = localtime(&seconds);
    int size = ::strlen (timeinfo);
    for (int i = 0; i < size; i++){
        if (*(timeinfo+i) == ':'){
            *(timeinfo+i) = '.';
            }
        }
if (CreateDirectory(asctime(timeinfo) ,NULL))
    cout << "directory create" << endl;
else
    cout << "error create directory" << endl;
    getch();
}
Код
Folder.cpp
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\folder\folder\folder.cpp(15): warning C4996: 'localtime': This function or variable may be unsafe. Consider using localtime_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1>          c:\program files\microsoft visual studio 10.0\vc\include\time.inl(112): см. объявление "localtime"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\folder\folder\folder.cpp(16): error C2664: strlen: невозможно преобразовать параметр 1 из "tm *" в "const char *"
1>          Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\folder\folder\folder.cpp(18): error C2678: бинарный "==": не найден оператор, принимающий левый операнд типа "tm" (или приемлемое преобразование отсутствует)
1>          c:\program files\microsoft visual studio 10.0\vc\include\exception(470): может быть "bool std::operator ==(const std::_Exception_ptr &,const std::_Exception_ptr &)"
1>          c:\program files\microsoft visual studio 10.0\vc\include\exception(475): или       "bool std::operator ==(std::_Null_type,const std::_Exception_ptr &)"
1>          c:\program files\microsoft visual studio 10.0\vc\include\exception(481): или       "bool std::operator ==(const std::_Exception_ptr &,std::_Null_type)"
1>          c:\program files\microsoft visual studio 10.0\vc\include\system_error(408): или       "bool std::operator ==(const std::error_code &,const std::error_condition &)"
1>          c:\program files\microsoft visual studio 10.0\vc\include\system_error(416): или       "bool std::operator ==(const std::error_condition &,const std::error_code &)"
1>          c:\program files\microsoft sdks\windows\v7.0a\include\guiddef.h(192): или       "int operator ==(const GUID &,const GUID &)"
1>          при попытке сопоставить список аргументов "(tm, char)"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\folder\folder\folder.cpp(19): error C2679: бинарный "=": не найден оператор, принимающий правый операнд типа "char" (или приемлемое преобразование отсутствует)
1>          c:\program files\microsoft visual studio 10.0\vc\include\time.h(116): может быть "tm &tm::operator =(const tm &)"
1>          при попытке сопоставить список аргументов "(tm, char)"
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2012, 10:25
Привет! Вот еще темы с ответами:

Строки. Заменить символы - цифры на символ '*'. В заданной строке заменить подряд идущие пробелы - C++
П.5.16.Правил Запрещено создавать темы с множеством вопросов во всех разделах, кроме разделов платных услуг. Один вопрос - одна тема. ...

Это эта задача? (Поменять подряд заданный символ на другой символ.) - C++
Задача (язык С + +). Поменять в введенном с клавиатуры строке символов подряд заданный символ на другой заданный символ. #include...

Обменять символ 'a' на символ 'т' в заданной строке. Оформить в виде функции - C++
Обменять символ 'a' на символ 'т' в заданной строке. Оформить в виде функции

Ввести с клавиатуры символ. Определить, является ли введённый символ буквой - C++
Ввести с клавиатуры символ. Определить, является ли введённый символ буквой.Заранее благодарчик!


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru