C++ nahrazení Unicode – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

C++ nahrazení Unicode – C / C++ – Fórum – Programujte.comC++ nahrazení Unicode – C / C++ – Fórum – Programujte.com

 

Kenvelo+2
Super člen
2. 1. 2022   #1
-
0
-

Zdravím pokouším se napsat prográmek, který otevře soubor přečte ho a nahradí Uni znaky, bohužel znak to nenahradí nebo napíše místo něho nějakou kravinu.

Kod je opravdu nahrubo a jde mi čistě o přeložení-předělání 15 souborů ale obsahují 10000 řádků

string line;

    ifstream myfile("lish.txt");

    if (myfile.is_open())
    {
        while (getline(myfile, line))
        {

            cout << line << '\n';
            ofstream myfil("example.txt", ios::in | ios::app| ios::ate);


            if (myfil.is_open())
            {

               const char x = '½';         // - c
               const char y = '¼';         // - e
               const char b = '¾';         // - r
               const char z = '©';         // - C
               const char f = 'õ';         // - n


                replace(line.begin(), line.end(), x, 'c');
                replace(line.begin(), line.end(), y, 'e');
                replace(line.begin(), line.end(), b, 'r');
                replace(line.begin(), line.end(), z, 'C');
                replace(line.begin(), line.end(), f, 'n');
                myfil << line << endl;
                myfil.close();
            }
        }
        myfile.close();
    }

    else cout << "Unable to open file";

Děkuji za každou radu

Nahlásit jako SPAM
IP: 89.177.208.–
Díky bohu, že počítače vymysleli muži. Kdyby to byly ženy, tak binární soustavu reprezentují jedničky, nuly a "možná"
gna
~ Anonymní uživatel
1891 příspěvků
2. 1. 2022   #2
-
0
-

   

std::wifstream wif("input.txt");
wif.imbue(std::locale(std::locale(), new std::codecvt_utf8<wchar_t>));

std::wofstream wof("output.txt");
wof.imbue(std::locale(std::locale(), new std::codecvt_utf8<wchar_t>));

std::wstring line;
while (getline(wif, line))
{
    std::replace(line.begin(), line.end(), L'č', L'c');
    wof << line << "\n";
}
Nahlásit jako SPAM
IP: 213.211.51.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 42 hostů

Podobná vlákna

UNICODE — založil Zdenek Farana

Unicode... — založil BigBear

TCP - Unicode — založil Lukasas

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý