Правильно разбираться с кодировкой HTML в ACCESS - PullRequest
0 голосов
/ 14 сентября 2011

Кто-то прислал мне программу, в которой мне нужно будет заменить все символы, имеющие специальную кодировку в HTML, на их кодированную версию (например, изменить все ' на ' или все А до А ).

Я не уверен, зачем это нужно, но я не принимаю решение, и я должен это сделать.Мне было интересно, есть ли способ быстро и эффективно заменить все эти символы сразу или с минимально возможным количеством кода.

Чтобы сделать вещь более «интересной», все это доступно в ACCESS 2003.

Я, вероятно, сделаю что-то подобное

Private Function EncodeString(strOriginal as string) as string
'replace the characters with Replace or something of the sort.    

End Function

Ответы [ 2 ]

3 голосов
/ 15 сентября 2011

На вопрос дан ответ, но я бы тоже хотел кое-что сказать.
При желании вы можете быстро сгенерировать html-сущности на основе гекса.
Так проще не знать имя сущности.

Function EncodeString(ByVal strOriginal)
    Dim currChar, i, sOut, CharList
    CharList =  "óáéíúÁÉÍÓÚ¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿×÷ÀÂÃÄÅÆ" &_
                "ÇÈÊËÌÎÏÐÑÒÔÕÖØÙÛÜÝÞßàâãäåæçèêëìîïðñòôõöøùûüýþÿ"
    sOut = strOriginal
    For i = 1 To Len(CharList)
        currChar = Mid(CharList, i, 1)
        sOut = Replace(sOut, currChar, "&#x"& Hex(AscW(currChar)) &";")
    Next
    EncodeString = sOut
End Function
3 голосов
/ 14 сентября 2011

Вот, пожалуйста, это должно сделать то, что вам нужно:

Private Function EncodeString(strOriginal as string) as string
    Dim strTemp as string
    strTemp = strOriginal
    strTemp = Replace(strTemp, "ó", "ó")
    strTemp = Replace(strTemp, "á", "á")
    strTemp = Replace(strTemp, "é", "é")
    strTemp = Replace(strTemp, "í", "í")
    strTemp = Replace(strTemp, "ú", "ú")
    strTemp = Replace(strTemp, "Á", "Á")
    strTemp = Replace(strTemp, "É", "É")
    strTemp = Replace(strTemp, "Í", "Í")
    strTemp = Replace(strTemp, "Ó", "Ó")
    strTemp = Replace(strTemp, "Ú", "Ú")
    strTemp = Replace(strTemp, "¡", "¡")
    strTemp = Replace(strTemp, "¢", "¢")
    strTemp = Replace(strTemp, "£", "£")
    strTemp = Replace(strTemp, "¤", "¤")
    strTemp = Replace(strTemp, "¥", "¥")
    strTemp = Replace(strTemp, "¦", "¦")
    strTemp = Replace(strTemp, "§", "§")
    strTemp = Replace(strTemp, "¨", "¨")
    strTemp = Replace(strTemp, "©", "©")
    strTemp = Replace(strTemp, "ª", "ª")
    strTemp = Replace(strTemp, "«", "«")
    strTemp = Replace(strTemp, "¬", "¬")
    strTemp = Replace(strTemp, "®", "®")
    strTemp = Replace(strTemp, "¯", "¯")
    strTemp = Replace(strTemp, "°", "°")
    strTemp = Replace(strTemp, "±", "±")
    strTemp = Replace(strTemp, "²", "²")
    strTemp = Replace(strTemp, "³", "³")
    strTemp = Replace(strTemp, "´", "´")
    strTemp = Replace(strTemp, "µ", "µ")
    strTemp = Replace(strTemp, "¶", "¶")
    strTemp = Replace(strTemp, "·", "·")
    strTemp = Replace(strTemp, "¸", "¸")
    strTemp = Replace(strTemp, "¹", "¹")
    strTemp = Replace(strTemp, "º", "º")
    strTemp = Replace(strTemp, "»", "»")
    strTemp = Replace(strTemp, "¼", "¼")
    strTemp = Replace(strTemp, "½", "½")
    strTemp = Replace(strTemp, "¾", "¾")
    strTemp = Replace(strTemp, "¿", "¿")
    strTemp = Replace(strTemp, "×", "×")
    strTemp = Replace(strTemp, "÷", "÷")
    strTemp = Replace(strTemp, "À", "À")
    strTemp = Replace(strTemp, "Â", "Â")
    strTemp = Replace(strTemp, "Ã", "Ã")
    strTemp = Replace(strTemp, "Ä", "Ä")
    strTemp = Replace(strTemp, "Å", "Å")
    strTemp = Replace(strTemp, "Æ", "Æ")
    strTemp = Replace(strTemp, "Ç", "Ç")
    strTemp = Replace(strTemp, "È", "È")
    strTemp = Replace(strTemp, "Ê", "Ê")
    strTemp = Replace(strTemp, "Ë", "Ë")
    strTemp = Replace(strTemp, "Ì", "Ì")
    strTemp = Replace(strTemp, "Î", "Î")
    strTemp = Replace(strTemp, "Ï", "Ï")
    strTemp = Replace(strTemp, "Ð", "Ð")
    strTemp = Replace(strTemp, "Ñ", "Ñ")
    strTemp = Replace(strTemp, "Ò", "Ò")
    strTemp = Replace(strTemp, "Ô", "Ô")
    strTemp = Replace(strTemp, "Õ", "Õ")
    strTemp = Replace(strTemp, "Ö", "Ö")
    strTemp = Replace(strTemp, "Ø", "Ø")
    strTemp = Replace(strTemp, "Ù", "Ù")
    strTemp = Replace(strTemp, "Û", "Û")
    strTemp = Replace(strTemp, "Ü", "Ü")
    strTemp = Replace(strTemp, "Ý", "Ý")
    strTemp = Replace(strTemp, "Þ", "Þ")
    strTemp = Replace(strTemp, "ß", "ß")
    strTemp = Replace(strTemp, "à", "à")
    strTemp = Replace(strTemp, "â", "â")
    strTemp = Replace(strTemp, "ã", "ã")
    strTemp = Replace(strTemp, "ä", "ä")
    strTemp = Replace(strTemp, "å", "å")
    strTemp = Replace(strTemp, "æ", "æ")
    strTemp = Replace(strTemp, "ç", "ç")
    strTemp = Replace(strTemp, "è", "è")
    strTemp = Replace(strTemp, "ê", "ê")
    strTemp = Replace(strTemp, "ë", "ë")
    strTemp = Replace(strTemp, "ì", "ì")
    strTemp = Replace(strTemp, "î", "î")
    strTemp = Replace(strTemp, "ï", "ï")
    strTemp = Replace(strTemp, "ð", "ð")
    strTemp = Replace(strTemp, "ñ", "ñ")
    strTemp = Replace(strTemp, "ò", "ò")
    strTemp = Replace(strTemp, "ô", "ô")
    strTemp = Replace(strTemp, "õ", "õ")
    strTemp = Replace(strTemp, "ö", "ö")
    strTemp = Replace(strTemp, "ø", "ø")
    strTemp = Replace(strTemp, "ù", "ù")
    strTemp = Replace(strTemp, "û", "û")
    strTemp = Replace(strTemp, "ü", "ü")
    strTemp = Replace(strTemp, "ý", "ý")
    strTemp = Replace(strTemp, "þ", "þ")
    strTemp = Replace(strTemp, "ÿ", "ÿ")
    EncodeString = strTemp
End Function
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...