Just Do It - XML Generic Editor
Publicado por Denis Doria 12/06/2008
[ Hits: 4.540 ]
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()
QFacil 0.2 - Qemu simplificado.
Calculadora de funções do 1º grau
Versão das principais distribuições.
Nenhum coment�rio foi encontrado.
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
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)
Alguém já usou o framework Avalonia para desenvolver interfaces de usu... (2)
Gestão de Ambiente em uma rede Linux (3)