Насловна странаУпутство за софтверКако претраживач добија кодирање ЦСС документа?
Како претраживач добија кодирање ЦСС документа?

За претраживач је много компликованије да добије кодирање ЦСС документа цхарсет атрибут, а ЦСС документ се такође може подесити кодирање и на крају подразумевани документ за кодирање.

Утицај

Какав ће бити утицај ако је грешка у препознавању кодирања у ЦСС документу тачна? Енглески знакови се могу нормално препознати, али кинески знакови ће бити приказани као искривљени знакови промене фонта).

Којим редоследом претраживач добија кодирање ЦСС документа?

Према [1] ЦСС 2.1 спецификацији, кодирање екстерне ЦСС датотеке треба да се одреди према следећим приоритетима:

1. Кодирање наведено параметром "цхарсет" поља "Цонтент-Типе" у заглављу ХТТП одговора.

2. БОМ и/или кодирање које дефинише @цхарсет.

3.<link charset="">или друге метаподатке које обезбеђује механизам повезивања (ако их има).

4. Уведите кодирање одређено у ХТМЛ-у ове ЦСС датотеке или у другој ЦСС датотеци (ако постоји).

5. Ако се кодирање не може одредити у горњим корацима, претпоставља се да је кодирање УТФ-8.


Пошаљите метод да добијете кодирање из БОМ-а (Ц#):

/// <summary> /// 从字节流判断编码(返回null是不能判断出编码) /// </summary> /// <param name="bt">输入字节流</param> /// <returns></returns> internal static string GetEncodingByByte(byte[] bt) { //带BOM的utf-8 var utf8 = new byte[] { 0xEF, 0xBB, 0xBF }; if (bt[0] == utf8[0] && bt[1] == utf8[1] && bt[2] == utf8[2]) { return "utf-8"; } //UTF-32-BE var utf32Be = new byte[] { 0x00, 0x00, 0xFE, 0xFF }; if (bt[0] == utf32Be[0] && bt[1] == utf32Be[1] && bt[2] == utf32Be[2] && bt[3] == utf32Be[3]) { return "utf-32"; } //UTF-32-LE var utf32Le = new byte[] { 0xFF, 0xFE, 0x00, 0x00 }; if (bt[0] == utf32Le[0] && bt[1] == utf32Le[1] && bt[2] == utf32Le[2] && bt[3] == utf32Le[3]) { return "utf-32"; } //UTF-32-2143 var utf322143 = new byte[] { 0x00, 0x00, 0xFF, 0xFE }; if (bt[0] == utf322143[0] && bt[1] == utf322143[1] && bt[2] == utf322143[2] && bt[3] == utf322143[3]) { return "utf-32"; } //UTF-32-3412 var utf323412 = new byte[] { 0xFE, 0xFF, 0x00, 0x00 }; if (bt[0] == utf323412[0] && bt[1] == utf323412[1] && bt[2] == utf323412[2] && bt[3] == utf323412[3]) { return "utf-32"; } //UTF-16-BE var utf16Be = new byte[] { 0xFE, 0xFF }; if (bt[0] == utf16Be[0] && bt[1] == utf16Be[1]) { return "utf-16"; } //UTF-16-LE var utf16Le = new byte[] { 0xFF, 0xFE }; if (bt[0] == utf16Le[0] && bt[1] == utf16Le[1]) { return "utf-16"; } return null; }
Софтверска апликација: преузимање предњег шаблона и СЕО оптимизација; Напомена: Овај софтвер није хакерски програм и не може преузети позадинске податке!
Одрицање одговорности: Услуга је за лично проучавање, истраживање или уважавање, као и за друге некомерцијалне или непрофитне сврхе, али у исто време треба да буде у складу са одредбама закона о ауторским правима и другим релевантним законима и не сме да крши законска права ове веб странице и носиоци сродних права Ризици повезани са коришћењем алата на овом сајту немају никакве везе са овим софтвером.
Цопиригхт © 2019-2024 Раббит Софтваре Сва права задржана Гуангдонг ИЦП бр. 19111427-2
Туториал информатион Упутство за коришћење Теме веб сајта