Program pobierający nazwe ścieżki pliku txt.. dalej w opisie treści

2018-11-24 15:57
HalpMe
0

#apka konsolowa, C++
Witam wszystkich, jestem początkujący i zaplanowałem sobie zrobienie przerastającego mnie troche projektu i proszę o pomoc:). Chodź dla wielu z Was może wydawać się banalny. Nie proszę też o napisanie gotowego kodu, ale o bardziej o pomoc merytoryczną jak go wykonać.
Chciałbym zrobić następujący program:
Zmieniałby on wielkosc liter na duze z pliku txt.
Tworzymy plik txt gdziekolwiek na kompie, do ktorego bedziemy mogli wkleic/(napisac(bez sensu) xD) tekst napisany malymi literami.
Program ma spytac o lokalizacje tego otóż pliku, otworzyć go do odczytu.
Pobrac zawartość z tego txt, napisaną małymi literami, do RAM.
Zmienić wielkość liter z pobieranych linijek na duże, zapisac do RAM.
Otworzyć nowy txt do zapisu i zapisac w nim przekonwertowany tekst.(nie musi juz pytac o lokalizacje do zapisu, moze zapisac w miejscu działania aplikacji, chociaż jakby ktoś mi wytłumaczył jak to tez zrobic to byloby super:D)

Każda pomoc mile widziana:)

edytowany 1x, ostatnio: kq, 2018-11-24 15:57

Pozostało 580 znaków

2018-11-24 16:13
1
HalpMe napisał(a):

Nie proszę też o napisanie gotowego kodu, ale o bardziej o pomoc merytoryczną jak go wykonać.

Jasne. Z czym konkretnie masz problem?

Pozostało 580 znaków

2018-11-24 16:13
kq
1

Drobna rada: wygodniejszym rozwiązaniem może być przekazanie ścieżki do pliku jako parametru programu.

  • Otwórz i zapisz plik za pomocą fstream,
  • użyj toupper() z <cctype>

Pozostało 580 znaków

2018-11-24 16:27
HalpMe
0

chodzi głównie o początek, jak kazac programowi pobrac sciezke? Zeby automatycznie pobrał ja po wpisaniu i otworzyl wlasnie ten plik. Bo wiem jak otworzyc plik o zadanej nazwie, ale w tym wypadku to nwm od czego zaczac. Czy musze np utworzyc nowy txt z zapisem sciezki.. hmm juz sam nie wiem

Pozostało 580 znaków

2018-11-24 16:49
1

Nasuwają się dwa proste rozwiązania:

  • pobierasz ścieżkę do pliku od użytkownika przez std::cin lub coś podobnego
  • bierzesz tę nazwę z argv

Pozostało 580 znaków

2018-11-24 16:52
HalpM
0
  • bierzesz tę nazwę z argv
    a czo to is?

Mam cos takiego (please dont laught!)

#include <iostream>
#include <fstream>
#include <windows.h>
using namespace std;

string sciezka;

int main()
{
    cout << "Wprowadz sciezke pliku txt: " << endl;
    cin >> sciezka;

    ifstream plik;
    plik.open(sciezka,ios::in);                 //mój main problem//

    string pobranytext;

    while(getline(plik, pobranytext))

    cout << pobranytext;                        //sprawdzam czy tekst sie pobrał//
    system("PAUSE");

    return 0;
}
edytowany 1x, ostatnio: furious programming, 2018-11-24 16:59

Pozostało 580 znaków

2018-11-24 16:57
0

argv to wektor argumentów podanych przy wywołaniu programu: http://www.cplusplus.com/articles/DEN36Up4/

Program wygląda na pierwszy rzut oka OK, z dokładnością do nieczytelnego formatowania pętli i system("PAUSE").

Pozostało 580 znaków

2018-11-24 17:07
HalpM
0

Problem w tym że nie chce się skompilować przez zly plik.open
Niestety wiedza z poradnika mnie poki co przerasta. Nwm co robic z tym argv, o vectorach w programowaniu jeszcze nic nie wiem:/

Pozostało 580 znaków

2018-11-24 17:15
HalpM
0

wczytuje sciezke cin'em, potem otwieram ale tam juz nie ma cudzysłowów i mysle ze to prze ich brak, ale gdy je dodam to jest traktowane jak istniejąca lokalizacja, a nie jak zmienna :/

Pozostało 580 znaków

2018-11-24 17:17
0

U mnie działa (gcc (Gentoo 8.2.0-r4 p1.5) 8.2.0). Jaki dokładnie masz błąd kompilacji?

A ten argv to wektor bardziej w pojęciu matematycznym, a nie C++-owym (bo to nie std::vector, tylko tablica w stylu C), ale jeśli nie chcesz, to się tym nie musisz jeszcze przejmować.

Pozostało 580 znaków

2018-11-24 17:24
HalpM
0
Althorion napisał(a):

U mnie działa (gcc (Gentoo 8.2.0-r4 p1.5) 8.2.0). Jaki dokładnie masz błąd kompilacji?

Code Blocks

error no matching function for call to 'std::basic_ifstream<char>open(std::__cxx11::string&, const openmode&)'

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0