Pular para o conteúdo

inserir virgulas em uma arquivo txt

Responder tópico
  • Denunciar
  • Indicar
01 02

1. inserir virgulas em uma arquivo txt

Enviado em 28/12/2015 - 21:47h

O amigos tenho o seguinte arquivo txt com o seguinte conteudo.

00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00


e quero que fique o seguinte
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,x
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,x
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,x
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,x

agurado obrigado

Responder tópico

2. Re: inserir virgulas em uma arquivo txt

Enviado em 28/12/2015 - 21:53h

Amigo, abre um editor de textos aí e faz isso.

3. Re: inserir virgulas em uma arquivo txt

Enviado em 28/12/2015 - 21:55h

Acima, brincadeiras a parte. Mas vê se ponhe no conteúdo do seu tópico que você quer Python, senão algum maluco vai achar sua pergunta ruim.

Não manjo tanto assim de Python, mas creio que você precisa seguir a seguinte lógica:
- Você tem um arquivo com uma string, e deseja pôr vírgulas no lugar dos espaços e após 47 caracteres o caractere "," (vírgula) + o caractere "x"

OK. Até aí tudo bem, vamos lá:
- Seu programa ficar rodando dentro de um LOOP. Neste loop, ele deverá checar SE o caractere indicado é um espaço em braco. Em caso afirmativo, ele substitui este caractere por uma vírgula. E também deverá checar se o caractere É DIVISÍVEL por 47. Neste caso, acrescentará ao documento os caracteres "," e "x". Quebras de linhas são representadas pelo caractere "\n", sendo assim, não há com o que se preocupar.

Desculpe se errei em alguma coisa, mas estou aqui para tentar ajudar!

4. Re: inserir virgulas em uma arquivo txt

Enviado em 28/12/2015 - 22:02h

Use o tradicional comando unix sed:

sed -i 's/\ /,/g;s/\(00\)$/\1,x/g' texto.txt
- -
moremoremoreram!
http://bit.ly/1Pqwb4T

5. arquivo grande 32 milhoes de linhas

Enviado em 28/12/2015 - 22:22h

O negocio que eu quero formatar um arquivo que tem 32 milhoes de linhas colocando uma virula entre os numeros e um x no final
esse sed faz arquivo todo irei testar?

6. amigo falto o x no final do arquivo a virgular foi legal

Enviado em 28/12/2015 - 22:26h

amigo faltou o x no final do arquivo a virgular foi legal
Ja agradecido aguardo!!!!!!!!!!!

7. Re: inserir virgulas em uma arquivo txt

Enviado em 28/12/2015 - 22:27h

james007tia escreveu:

O negocio que eu quero formatar um arquivo que tem 32 milhoes de linhas colocando uma virula entre os numeros e um x no final
esse sed faz arquivo todo irei testar?
Como você postou na comunidade sobre Python, você quer fazer isso nesta linguagem? Pois ai é outro esquema.

Quanto ao arquivo ter milhões de linhas, a substituição do sed ai é global. Faça da seguinte forma para preservar o arquivo original:

sed 's/\ /,/g;s/\(00\)$/\1,x/g' texto.txt > texto-modificado.txt
- -
moremoremoreram!
http://bit.ly/1Pqwb4T

8. Re: inserir virgulas em uma arquivo txt

Enviado em 28/12/2015 - 22:31h

Python é realmente sua solução:


with open("nome do arquivo não editado", "r") as in_file:
with open("nome do arquivo editado", "a") as out_file:
for word in in_file:
for char in word:
if char==" ":
char=','
elif char=='\n':
char='x'

out_file.write(char)
out_file.write('\n')
Não testei esse código mas creio que o raciocínio esteja correto. Teste com um pequeno e se der certo siga em frente.

9. help please

Enviado em 29/12/2015 - 00:41h

amigo funcionou em parte porem a saida do arquivo esta sendo a seguinte

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,
x
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,
x
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,
x
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,
x
e eu presciso como esta citado acima

10. Re: inserir virgulas em uma arquivo txt

Enviado em 29/12/2015 - 00:47h

Boa noite,

Essa aqui seria minha solução:

 $ sed s/" "/","/g entrada.txt >> saida.txt 
Edit:

Esqueci de colocar o 'x', colocando o x eu faria assim:

 $ sed s/" "/","/g entrada.txt | sed s/"\n"/",x\n"/g > saida.txt 
Att,

11. amigo nada do x no final do arquivo

Enviado em 29/12/2015 - 01:18h

amigo nada do x no final do arquivo
amigo no lugar do x pode ser 0 se facilitar

12. Re: inserir virgulas em uma arquivo txt

Enviado em 29/12/2015 - 01:40h

james007tia escreveu:

amigo nada do x no final do arquivo
amigo no lugar do x pode ser 0 se facilitar
Tenta assim, já testei e aqui funcionou. copia exatamente:



# -*- coding: utf-8 -*-

infile=raw_input("Entre com o nome de seu arquivo: ")
outfile=raw_input("Entre com o nome para o arquivo de saída: ")

with open(infile, "r") as in_file:
with open(outfile, "a") as out_file:
for word in in_file:
for char in word:
if char==" ":
char=','
elif char=='\n':
char='x'

out_file.write(char)


out_file.write('\n')
edit: Além disso tem certeza que seus arquivos estão do jeito que você colocou lá encima?
01 02

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder