Jump to content
php.lv forumi

charsets, programmā.


Sasa

Recommended Posts

Ir tāda situācija ir specifiska programma, kura generē HTML atskaites ... tika tūlkotas atskaites no RUS un LAT val, bet tagad ir tā ka tur kur ir garumzīmes un vajadzīgi faili ir UTF-8, bet programma negrib attēlot garumzīmes, kad teik saglabāta atskaite HTML formātā tad garumzīmes ir redzamas, bet kad iekš Firefox tiek nomainīts enkodings uz windows-1251, tad tas fails izskatās tā pat kā programā ... Varbūt LAT un RUS valodas nevar pastāvēt abas blakus, jo tik līdz enkodings ir UTF-8 un tik vērts caur FireFox tad RUS simboli ir "?" (pilnīgi visi!)

Link to comment
Share on other sites

Neko nesapratu no tava stāstītā.

 

kad iekš Firefox tiek nomainīts enkodings uz windows-1251, tad tas fails izskatās tā pat kā programā

Nu ja tas ir UTF-8, tad kāpēc maini uz win1251 ? Un kā lai mēs zinām kā tev tajā "programma" izskatās.

 

Varbūt LAT un RUS valodas nevar pastāvēt abas blakus, jo tik līdz enkodings ir UTF-8 un tik vērts caur FireFox tad RUS simboli ir "?"

Var pastāvēt. Tam jau unicode (utf-8) ir domāts.

 

Noskaidro kādos enkodingos tev tā programma taisa exportu uz html.

Link to comment
Share on other sites

Programā konfig failos ir ierakstīt win1251 un es to mainu uz utf-8 un noglabāju arī kā utf-8, jo tajā failā ir garumzīmes!

 

Mainu tos enkodingus tāpēc, ka lai parskatītos kā kas notik, jo programā ir iestrādāta HTML atskaišu parādīšana, kura nerāda garumzīmes, tapēc saglabāju kā html uz skatos caur FireFox kurš man automātiski parāda garumzīmes, bet krievu simbolus "?", uzliekot win1251 es iekš firefox redzu tādu pašu atskaiti kā programa man rāda.

 

Pati programma ir Rus valodā!

 

Edit:

 

kā es varu nogādāt tos failus, lai varētu tos redzēt! tad varbūt būs saprotāmāk! kapē te nevar pievienot failu?

Edited by Sasa
Link to comment
Share on other sites

Ja programma ģenerē tās atskaites tikai vienā čarsetā (win-1251), tad nekā tu tur nepadarīsi.

Vienīgais risinājums - prasi atskaišu veidotās programmas izstrādātājam, lai uztaisa utf-8 atbalstu. php iconv izlaišana visdrīzāk nepalīdzēs, jo informācija par katra burta čarsetu būs jau pazudusi (jo kā gan lai zinātu, vai burts ar ascii kodu 0x98 ir jākonvertē no win1251 vai win1257 čarsetu?)

Link to comment
Share on other sites

šitais varētu derēt:

 

private string cnv (string ascs)
 {
  byte[] b=System.Text.Encoding.UTF8.GetBytes(ascs);
  byte[] encoded=Encoding.Convert(Encoding.UTF8,Encoding.GetEncoding("windows-1251"),b);
  return Encoding.GetEncoding("windows-1251").GetString(encoded);

}

 

javascritpu īsti nezinu!

Link to comment
Share on other sites

Ja programma ģenerē tās atskaites tikai vienā čarsetā (win-1251), tad nekā tu tur nepadarīsi.

bubu, nav īsti skaidrs kā viņam tur kas tiek ģenerēts. Jo cik saprotu, tad LV simboli iekš UTF-8 viņam rādās, bet krievu simboli tikai tad, ja pārslēdz uz 1251. Tātad tā tīri arī nav, ka tikai win1251 dod ārā. Bet nu nez.

Link to comment
Share on other sites

javascritpu īsti nezinu!

Javascripts? Tas nav Javscripts. Tā ir JAVA.

Vai tik tur vienkārši nevajag return ascs un viss? (javu nezinu un nemāku)

Paskaties arī dokumentacijā par System.Text.Encoding klasi un tās metodes: GetEncoding, Convert.

Link to comment
Share on other sites

×
×
  • Create New...