Kodovanie – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Kodovanie – .NET – Fórum – Programujte.comKodovanie – .NET – Fórum – Programujte.com

 

Misiak0
Návštěvník
12. 8. 2008   #1
-
0
-

Zdravim, mam problem so zmenou kodovania suboru, nacitavam subor

   

StreamReader nacitany_subor = new StreamReader(input_file);

while (nacitany_subor.Peek() != -1) //cyklus prechadzajuci subor po riadkoch
{
riadok = nacitany_subor.ReadLine();
...

}

A chcem ho ulozit v inom kodovani, aby sa zobrazovala diakritika...
skusal som ho otvorit takto ale nefunguje to.
StreamReader nacitany_subor = new StreamReader(input_file, Encoding.UTF8);


Nahlásit jako SPAM
IP: 158.196.44.–
paul270
Návštěvník
13. 8. 2008   #2
-
0
-

moc jsem tě nepochopil...máš načtený řádek z původního souboru (riadok), tak proč pak toto?

StreamReader nacitany_subor = new StreamReader(input_file, Encoding.UTF8);


viděl bych to takhle:

StreamWriter vystupni_soubor = new StreamWriter(jmeno_vystupniho_souboru, kodovani);

a apk už jen:

vystupni_soubor.WriteLine(riadok);

Nahlásit jako SPAM
IP: 88.103.71.–
mephi0
Expert
14. 8. 2008   #3
-
0
-

Skúšal si aj iné kódovania ? Si si isty že je subor uloženy prave v UTF-8 ? ne je to jedina možnosť ako uložiť ľščťžýáíé :)

Nahlásit jako SPAM
IP: 85.248.56.–
Program nemusi fungovat rychle, staci ze funguje dostatecne rychle.
15. 8. 2008   #4
-
0
-

To mephi :

a co toto ?

using System;
using System.Collections.Generic;
using System.Text;
using System.IO;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string content = string.Empty;

using (TextReader tr = new StreamReader("file.txt", Encoding.Default))
{
content = tr.ReadToEnd();

tr.Close();
}

using (TextWriter tw = new StreamWriter("file-enc.txt", false, Encoding.UTF8))
{
tw.Write(content);
tw.Close();
}
}
}
}

u mna je file.txt ansi a vystup je UTF8, samozrejme si mozes zvolit aj ine kodovanie...

Nahlásit jako SPAM
IP: 82.119.228.–
-ViVo-
Misiak0
Návštěvník
17. 8. 2008   #5
-
0
-

To VirtualVoid :

Mno ide o to ze v tom bloku

 while (nacitany_subor.Peek() != -1) 

{
riadok = nacitany_subor.ReadLine();
//riadok rozparsrujem a ulozim do xml
}

funkcia na vytvorenie xml tagov


public static XmlDocument xmlDoc = new XmlDocument();
public static void Insert_subsubsection(XmlDocument xmlDoc, Parameter p)
{
XmlNode tagpPr = xmlDoc.CreateElement("w:pPr", Konstanty.WordprocessingML);
p.root_tagParagraph.AppendChild(tagpPr);
.....
}


a nakoniec ulozim
   xmlDoc.Save("document.xml");   

Problem je v tom ze nacitany subor moze mat akekolvek kodovanie ale ulozeny text v xml musi byt v utf-8,
Tvoj priklad som skusal aplikovat, ale nefungoval.


XmlWriter xw = new XmlWriter("document.xml",false, Encoding.UTF8);
xmlDoc.Save(xw);
neslo by to nejak inak?

Nahlásit jako SPAM
IP: 158.196.44.–
Misiak0
Návštěvník
17. 8. 2008   #6
-
0
-

To paul27 : nacitany subor subor moze byt v akomkolvek kodovani, asi mas pravdu ze snazit sa ho otvorit v utf-8 nie je dobra cesta. nacitany subor prevazdam do xml a aby sa mi regulerne zobrazilo potrebujem text pred ulozenim do xml-ka previest do utf-8



XmlWriter xw = new XmlWriter("document.xml",false, Encoding.UTF8);
xmlDoc.Save(xw);
mi nefunguje, chybu mi vyhodi prekladac pri vytvarani objektu xw.

Nahlásit jako SPAM
IP: 158.196.44.–
Misiak0
Návštěvník
17. 8. 2008   #7
-
0
-

To mephi : no ako sa urcite docitas v mojich odpovediach mal som zle otvaranie suboru v utf-8 ked otvarany subor moze byt v akomkolvek kodovani, ale ulozit ho potrebujem v utf-8 do xml.

Nahlásit jako SPAM
IP: 158.196.44.–
18. 8. 2008   #8
-
0
-

To Misiak :

tak skus do objektu xmlDoc nastavit cez metodu CreateXmlDeclaration spravne info:

xmlDoc.CreateXmlDeclaration("1.0", "UTF-8", "yes");

http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.createxmldeclaration.aspx

a na konci samozrejme pouzit ten xmltextwriter :

XmlTextWriter("SimpleXml.xml", System.Text.Encoding.UTF8);

Nahlásit jako SPAM
IP: 82.119.228.–
-ViVo-
Misiak0
Návštěvník
26. 8. 2008   #9
-
0
-

To VirtualVoid : samozrejme ze hlavicku xml zapisujem tak ako si to napisal, len v inej metode ale pri pouziti xmltextwriteru mi vypise tuto chybu:
Error 3 Cannot create an instance of the abstract class or interface 'System.Xml.XmlWriter'


Nahlásit jako SPAM
IP: 158.196.44.–
27. 8. 2008   #10
-
0
-

Misiak napsal:
To VirtualVoid : samozrejme ze hlavicku xml zapisujem tak ako si to napisal, len v inej metode ale pri pouziti xmltextwriteru mi vypise tuto chybu:
Error 3 Cannot create an instance of the abstract class or interface 'System.Xml.XmlWriter'





to nieje mozne :-) poriadne si to pozri na tom MSDN :-))

http://msdn.microsoft.com/en-us/library/wkee9k2s.aspx

http://www.c-sharpcorner.com/uploadfile/mahesh/readwritexmltutmellli2111282005041517am/readwritexmltutmellli21.aspx

Nahlásit jako SPAM
IP: 82.119.228.–
-ViVo-
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, 64 hostů

Podobná vlákna

Kodovanie — založil Marty_SVK

Kodovanie v Mysql — založil Michal Hanik

Kódovanie PHP — založil kroky

Php a xml - kodovanie — založil vlado0991

Ako zmeniť kódovanie? — založil w3q

 

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