Comment

Rafael Zanella

Mine lame version:

#/usr/bin/python

import sys
import os

#http://www.asciitable.com/
#http://www.w3schools.com/tags/ref_entities.asp

#DICT { char : HTML entity }
dicionario = {
    # ISO 8859-1 Character Entities
    'À' : "À", 'Á' : "Á", 'Â' : "Â", 'Ã' : "Ã", 'Ä' : "Ä", 'Å' : "Å",
    'Æ' : "Æ", 'Ç' : "Ç",
    'È' : "È", 'É' : "É", 'Ê' : "Ê", 'Ë' : "Ë",
    'Ì' : "Ì", 'Í' : "Í", 'Î' : "Î", 'Ï' : "Ï",
    'Ð' : "Ð", 'Ñ' : "Ñ",
    'Ò' : "Ò", 'Ó' : "Ó", 'Ô' : "Ô", 'Õ' : "Õ", 'Ö' : "Ö", 'Ø' : "Ø",
    'Ù' : "Ù", 'Ú' : "Ú", 'Û' : "Û", 'Ü' : "Ü",
    'Ý' : "Ý",
    'Þ' : "Þ", 'ß' : "ß",
    'à' : "à", 'á' : "á", 'â' : "â", 'ã' : "ã", 'ä' : "ä", 'å' : "å",
    'æ' : "æ", 'ç' : "ç",
    'è' : "è", 'é' : "é", 'ê' : "ê", 'ë' : "ë",
    'ì' : "ì", 'í' : "í", 'î' : "î", 'ï' : "ï",
    'ð' : "ð", 'ñ' : "ñ",
    'ò' : "ò", 'ó' : "ó", 'ô' : "ô", 'õ' : "õ", 'ö' : "ö", 'ø' : "ø",
    'ù' : "ù", 'ú' : "ú", 'û' : "û", 'ü' : "ü",
    'ý' : "ý", 'þ' : "þ", 'ÿ' : "ÿ",
};

def main ():
    try:
        if (sys.argv[1]):
            originalFile = open(sys.argv[1], "r")
            newFile = open(sys.argv[1] + ".RC", "w");
            
            while 1:
                #Variables
                read = originalFile.readline();
                strHolder = "";
                
                if not read:
                    break;
                
                for char in read: # for i in xrange(len(read) - 1)
                    try:
                        if ( ord(char) > 128):
                            strHolder += dicionario[char];
                        else:
                            strHolder += char;
                    except KeyError: # if the char is extended ASCII but hasn't been included on the dict
                        strHolder += char;
                #End for
                print strHolder; ##scaffolding
                newFile.write(strHolder);
            #End while
            
            #Close-ups
            originalFile.close();
            newFile.close();
        #end if
    except IndexError:
        print "\n\nModo de uso: toEntities.py <Nome_Do_Arquivo>\n\n"; return 1;
    except IOError:
            print "\n\nArquivo nao pode ser aberto...\n\n"; return 2;
#end main

main();
#EOF