» »

aspx preberm HTML strani

aspx preberm HTML strani

Lualah ::

Z Aspx parsam HTML stran, ampak problem je da je ena v utf-8 ena v iso-8859-1 ena pa v windows-1250 kodiranju. Ta ko je v utf-8 šumniki delajo, druge pa ne, namest šumnikov so ? in podobni znaki. Je možno narediti kako da bi šumniki delali tudi iz teh strani ki so v drugem kodiranju?

techfreak :) ::

ASCIIEncoding ascii = new ASCIIEncoding(); 
UTF8Encoding utf8 = new UTF8Encoding(); 
byte[] asciiBytes = Encoding.Convert(utf8, ascii, utf8bytes);

Lualah ::

hmm hvala DejanL15 kje to uporabim da bo delalo? Je pomembno?

techfreak :) ::

To uporabiš takrat ko prebeš HTML stran. Kar pa ti ta funkcija vrne, pa potem uporabiš za parsanje.

Lualah ::

imaš mogoče kak primer celotne kode kako to naredim, z googlom ne najdem celega primera

Senzacionale ::

http://www.dostavahrane.si

Lualah ::

hmm noče mi delovati

string htmlContent = GetHtmlContent(url);
htmlContent = HtmlHelper.ConverEncodings(htmlContent, Encoding.Unicode, Encoding.UTF8);
return new HtmlHelper().GetTagsAndValues(htmlContent);


in

public static string ConverEncodings(string content, Encoding currentEncoding, Encoding newEncoding)
        {
            // Convert the string into a byte[].
            byte[] bytes = currentEncoding.GetBytes(content);

            // Perform the conversion from one encoding to the other.
            byte[] newBytes = Encoding.Convert(currentEncoding, newEncoding, bytes);

            char[] newChars = new char[newEncoding.GetCharCount(newBytes, 0, newBytes.Length)];
            newEncoding.GetChars(newBytes, 0, newBytes.Length, newChars, 0);
            return new string(newChars);
        }


Vidi kdo napako?

techfreak :) ::

A ni Unicode in UTF-8 isto?

Lualah ::

tudi jaz mislim da je, isto je z ascii kaze ? namesto sumnika...

Uporabljam ncrawler mislim da on ze v osnovi pobere znak dol namesto sumnika, mogoce se motim...

arjan_t ::

A ni Unicode in UTF-8 isto?


utf-8 je "implementacija" unicode-a

Lualah ::

nasel sem izvir osnovne napake. S streamreaderjem preberem html output url naslova, ampak le ta pa unici sumnike.

Stream data = client.OpenRead(url);
StreamReader reader = new StreamReader(data);
string s = reader.ReadToEnd();


Lahko bi prebral html kar takole

WebClient client = new WebClient();
String htmlCode = client.DownloadString(url)


ampak sem prebral na netu da to ni priporocljivo. Je pa res da tako delajo vsi sumniki razen ž in spet nevem zakaj. Ne vem niti zakaj Streamreader unici vse sumnike? Kaj predlagate?

Zgodovina sprememb…

  • spremenilo: Lualah ()

Senzacionale ::

StreamReader reader = new StreamReader(data, Encode.UNICODE);

ali katerokoli kodiranje želiš
http://www.dostavahrane.si


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[c#] shrani text, tabele, slike

Oddelek: Programiranje
251503 (1109) klemen93
»

[C# asp.NET web forma] Kam zgine cookie oz. zkj se izbriše?

Oddelek: Programiranje
61106 (920) Morenov
»

ASP.NET + C# vprašanje

Oddelek: Programiranje
342760 (1774) Morenov
»

[C#] Simobilov Glasnik

Oddelek: Programiranje
134331 (1411) Mrch
»

Kako z VS.NET priti do izvorne kode neke html strani?

Oddelek: Programiranje
91337 (1132) Microsoft

Več podobnih tem