ITnetwork Flashka zdarma C# týden
Akce! Pouze tento týden sleva až 80 % na kurzy C# .NET. Lze kombinovat s akcí 50 % bodů navíc na prémiový obsah!
Brno? Vypsali jsme pro vás nové termíny školení Základů programování a OOP v Brně!
Avatar
Pavel
Člen
Avatar
Pavel:22.5.2018 18:27

Ahoj, poradíte mi někdo, jak spravit to, že mi metoda File.ReadAllLines() vrací pole stringů bez diakritiky
(židle=>?idle)?

 
Odpovědět 22.5.2018 18:27
Avatar
Andy Scheuchzer:22.5.2018 18:43

To bude kódování. Jestli to máš .txt, v uložit jako zkus dát něco jiného (unicode, UTF-8), výchozí je tam ANSI, C# má UTF-8, ale to asi víš.

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět  +1 22.5.2018 18:43
Člověk, co si myslí, že snědl všechnu moudrost světa, i když tomu tak není.
Avatar
HONZ4
Člen
Avatar
Odpovídá na Pavel
HONZ4:22.5.2018 19:22

Udělej to takto:

static string LoadFromFile(string filename)
        {   // using System.IO;
            using (StreamReader r = new StreamReader(filename, Encoding.Default, true))
            {
                return r.ReadToEnd();
            }
        }

Kódování si to zjistí samo. A nebudeš muset řešit BOM.

Použití:

string str = LoadFromFile("C:\\cesta_k_souboru\\soubor.txt");
Editováno 22.5.2018 19:23
 
Nahoru Odpovědět  +2 22.5.2018 19:22
Avatar
Odpovídá na HONZ4
Andy Scheuchzer:22.5.2018 19:30

Tak jsem se zase něco dozvěděl… Díky, i když jsem se neptal zrovna já. :-)

Editováno 22.5.2018 19:31
Nahoru Odpovědět  +1 22.5.2018 19:30
Člověk, co si myslí, že snědl všechnu moudrost světa, i když tomu tak není.
Avatar
HONZ4
Člen
Avatar
HONZ4:22.5.2018 19:47

Samozřejmě je nutné, aby byl na začátku souboru BOM identifikátor (tedy pokud jde o něco jiného než ANSI). A pokud je potřeba načíst soubor jako string[] tak načíst do stringu a pak jej rozdělit pomocí Split podle chuti.

Editováno 22.5.2018 19:49
 
Nahoru Odpovědět 22.5.2018 19:47
Avatar
Pavel
Člen
Avatar
Pavel:22.5.2018 22:29

Všem moc děkuji za reakce! Změnil jsem kódování a vše běží jak má :)

 
Nahoru Odpovědět 22.5.2018 22:29
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.