Diskuze: Problém s diakritikou
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 21 zpráv z 21.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Můžeš mi poradit jak na to? Prohledal jsem kde co a nevím si rady. Teprve začínám. Díky
Načítej to v takovém kódování v jakém jsi to uložil. Nevím jakým způsobem to načítáš, ale určitě tam bude způsob jak tomu říct co za kódování to má použít.
V jakém kódování je ten soubor uložený?
Zkus tohle:
System.Text.Encoding.GetEncoding(65001)
Pokud to nepůjde tak zkus kódy odsuď:
http://msdn.microsoft.com/…vs.110).aspx
Jaké kódování používá VS 2010? Když totiž vytvořím csv v mé aplikaci, tak jej aplikace načte v pohodě, ale v Excel je to nečitelné a naopak externí csv je v Excel v pohodě, ale v mé aplikaci je rozhozené. Asi nellepší by bylo změnit kódování přímo u csv, aby bylo stejné s VS, ale nevím jak. Prostě jsem Lama
Vs nepoužívá žádné kódování ale záleží v jaké kódování soubory ukládáš. V C# prostě "řekneš" jakým způsobem a v jakém kódování to má uložit. VS s tím nemá nic společného
Co použít tento konstruktor?
(string path, bool detectEncodingFromByteOrderMarks)
Jestli teda používáš pro načítání StreamReader
Jestli to dobře chápu, tak system.text.encoding() nastavuje kódování toho csv, které vytvářím?
Zirko, VS interně používá Unicode UTF-16 encoding.
Soubory se ukládají v encodingu podle kultury prostředí, defaultně na
českých windows jako CP-1250.
Řada aplikací na českých windows používá ANSI encoding nebo UTF-8 a pak
se rozbíjí diakritika.
Java zase defaultně používá ISO-8859-2, což je lehce nekompatibilní s
CP-1250 a ukazatelem je většinou rozbité š, č, ř.
@pako: detectEncodingFromByteOrderMarks je obvykle implicitně zapnutý a jde použít jenom v případě, že už je soubor uložený s tzv. preamble znaky, které určují encoding
Můžeš mi Zirko poradit co s tím mým problémem? Můj výtvor šlape, jen s tou diakritikou mám problém
CSV načítám takto:
using (StreamReader sr = new StreamReader(@"revize.csv"))
{
string s;
while ((s = sr.ReadLine()) != null)
{
string[] rozdeleno = s.Split(';');
string customer = rozdeleno[0];
string place_1 = rozdeleno[1];
string place_2 = rozdeleno[2];
string place_3 = rozdeleno[3];
Zkus nahradit vytvoření stream readeru následujícím kódem.
new StreamReader(@"revize.csv", Encoding.Default)
Pokud by to stále nefungovalo, tak nějaká z následujících variant by měla.
new StreamReader(@"revize.csv", Encoding.GetEncoding(1250))
new StreamReader(@"revize.csv", Encoding.UTF8)
Jo, Excel generuje csv dle prostředí, zde CP-1250. Navíc stejně se chová i k dalším jazykovým vlastnostem, oddělovač sloupců je středník a desetinná je čárka. Nemám ponětí, jak tohle @!# chování ošálit.
Napsal jsem si batch skript pro generování zdrojáků pro LuaLaTeX a kompilaci do pdf a dlouho jsem se s tím "zdržoval".
Nakonec jsem tuhle "vlastnost" "obešel" otevřením zmíněného csv v PSPadu a změnou kódování z CP-1250 (nativní M$) na UTF-8 (nativní pro batch a LuaLaTeX)...
Zobrazeno 21 zpráv z 21.
