Just Do It - XML Generic Editor
Publicado por Denis Doria 12/06/2008
[ Hits: 4.544 ]
Gera arquivos xml a partir de dois arquivos:
xmlfile:
<campo1="coluna1" campo2="coluna3"> <campo1="coluna2"campo2="coluna9">
inputfile:
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
Output:
<campo1="2" campo2="4">
<campo1="3"campo2="10">
<campo1="12" campo2="14">
<campo1="13"campo2="20">
Atualmente o script só trabalha com 10 colunas, ou seja, da coluna0 até coluna9. Se for omitido o arquivo de saida o output é feito na tela.
#!/usr/bin/python ########################################### #JUST DO IT - Python Version 0.02 # #XML Generic Editor... # #:-& #Autor: Denis Doria # ########################################### ########################################### #xmlfile # #<campo1="coluna1" campo2="coluna3"> #<campo1"coluna2"campo2="coluna9"> # ########################################### #inputfile # #1 2 3 4 5 6 7 8 9 10 #11 12 13 14 15 16 17 18 19 20 # ########################################### #Output # #<campo1="2" campo2="4"> #<campo1"3"campo2="10"> #<campo1="12" campo2="14"> #<campo1"13"campo2="20"> # ########################################### ########################################### #Changelog # # v0.01 - Cricao do software # - Le um xml generico e uma entrada gerando um xml especifico # # v0.02 - Elimina linhas em branco no arquivo de entrada # - Verificacao da permissao de escrita para o outputfile # - Criacao da ajuda # - Elimina linhas em branco no XML # - Criado opcao de imprimir na tela ou inserir em um arquivo # ########################################### import sys #Verificacao dos argumentos da linha de comando if len(sys.argv) < 2: print "JDI - Generic Xml Editor\n" print "jdi <arquivo xml> <arquivo de entrada> [arquivo de saida]\n" sys.exit(1) #Verificacao dos arquivos necessarios try: xmlfile = open(sys.argv[1],'r') except IOError: print "XML File not found!!!" sys.exit(1) try: inputfile = open(sys.argv[2],'r') except IOError: print "Input File not found!!!" sys.exit(1) out=0 if len(sys.argv)==4: try: outputfile = open(sys.argv[3],'w') out=1 except IOError: print "Permission denied!!!" sys.exit(1) #Elimina as linhas em branco do arquivo XML xmltmp = xmlfile.readlines() xmltmp.sort() xmltmp.reverse() xmlback = xmltmp[:xmltmp.index('\n')] xmllen = len(xmlback) input = inputfile.readlines() for i in range(len(input)): #Elimina o caracter de 'nova linha' newline = input[i].replace('\n','') if newline == '': continue #Cria uma lista com os valores de cada coluna rowinput = newline.split(' ') for j in range(xmllen): xml = [] #Coloca o xml nesta lista xml.extend(xmlback) #Para cada coluna tenta substituir o valor do input no xml for w in range(len(rowinput)): row = 'coluna'+str(w) xml[j] = xml[j].replace(row,rowinput[w]) if out == 0: print '%s' % (xml[j].replace('\n','')) else: outputfile.write(xml[j]) if out == 1: outputfile.flush() outputfile.close() inputfile.close() xmlfile.close()
run_update - Atualizador de Sabayon
Unescape de caracteres especiais ISO-8859-1
Invariância Discreta de Escala
Nenhum coment�rio foi encontrado.
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
O macete do Warsaw no Linux Mint e cia
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
Jogos baixados na Central de Aplicativos mas que não abrem (1)
debian com wayland, configuracao de teclado. Mudou Tudo! [RESOLVIDO] (1)
Iinstalar o Scanner Kodak i940 no Linux Mint 19/20? (3)
Pastas da raiz foram para a área de trabalho [RESOLVIDO] (11)