Advertisement
cyprianz5

Untitled

Dec 5th, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.92 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <direct.h>
  4. #include <cstdlib>
  5.  
  6. using namespace std;
  7.  
  8. int main()
  9. {
  10.     string pelnaSciezka;
  11.     cout << "Podaj sciezke mapy: " << endl;
  12.     getline(cin, pelnaSciezka);
  13.     pelnaSciezka.erase(0,1);
  14.     pelnaSciezka.erase(pelnaSciezka.size()-1,1);
  15.     if(pelnaSciezka.substr(pelnaSciezka.find_last_of(".") + 1) == "osu")
  16.     {
  17.         ifstream mapka;
  18.         mapka.open(pelnaSciezka.c_str());
  19.         if(mapka.good())
  20.         {
  21.             ofstream jedynka;
  22.             ofstream dwojka;
  23.  
  24.             string nazwaPliku = pelnaSciezka.substr(pelnaSciezka.find_last_of("\\")+1, pelnaSciezka.size());
  25.  
  26.             pelnaSciezka = pelnaSciezka.substr(0, pelnaSciezka.find_last_of("."));
  27.             string nazwaJeden = pelnaSciezka.substr(0, pelnaSciezka.find_first_of("[")) + "[Odd].osu";
  28.             string nazwaDwa = pelnaSciezka.substr(0, pelnaSciezka.find_first_of("[")) + "[Even].osu";
  29.  
  30.             jedynka.open(nazwaJeden.c_str());
  31.             if(jedynka.good())
  32.                 cout << "Utworzono: " << nazwaJeden << endl;
  33.             else
  34.                 cout << " * FAIL: " << nazwaJeden << endl;
  35.  
  36.             dwojka.open(nazwaDwa.c_str());
  37.             if(dwojka.good())
  38.                cout << "Utworzono: " << nazwaDwa << endl;
  39.             else
  40.                 cout << " * FAIL: " << nazwaDwa << endl;
  41.  
  42.             string wiersz;
  43.             do{
  44.                 getline(mapka, wiersz);
  45.                     if(wiersz.find("Version:") != string::npos)
  46.                     {
  47.                         jedynka << wiersz.erase(8) << "Odd" << endl;
  48.                         dwojka << wiersz.erase(8) << "Even" << endl;
  49.                     }
  50.                     else if(wiersz.find("BeatmapID:") != string::npos)
  51.                     {
  52.                         jedynka << wiersz.erase(10) << "0" << endl;
  53.                         dwojka << wiersz.erase(10) << "0" << endl;
  54.                     }
  55.                     else if(wiersz.find("BeatmapSetID:") != string::npos)
  56.                     {
  57.                         jedynka << wiersz.erase(13) << "-1" << endl;
  58.                         dwojka << wiersz.erase(13) << "-1" << endl;
  59.                     }
  60.                     else
  61.                     {
  62.                         jedynka << wiersz << endl;
  63.                         dwojka << wiersz << endl;
  64.                     }
  65.             }while(wiersz!="[HitObjects]" && !mapka.eof());
  66.  
  67.             int licznik = 0;
  68.             while( !mapka.eof() )
  69.             {
  70.                 getline( mapka, wiersz );
  71.                 if(licznik%2==0)
  72.                     jedynka << wiersz << endl;
  73.                 else if(licznik%2!=0)
  74.                     dwojka << wiersz << endl;
  75.                 licznik++;
  76.             }
  77.  
  78.         }
  79.         else
  80.             cout << "Uszkodzony plik";
  81.         }
  82.     else
  83.         std::cout << "Plik musi miec rozszerzenie .osu" << std::endl;
  84.     return 0;
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement