AJUDA ARQUIVO .TXT EDITADO

OWNIMS 11/08/2011 16:38:16
#381447
galera como eu faço pro vb.net ou 2010 sei lah
pra ele criar um arquivo tipo teste.abc
onde abc eh a estençao que eu inventar e pra ele ser encripitado tipo
queria fazer o arquivo .abc ex assim

arquivo seria assim + ou -
001;nome;idade;etc
e salvaria em .txt mais so que seria encripitado de um geito que so o programa saberia
tipo salva assim
xxaiqunrizxcxrirys (esse exemplo ta uma merda)
xxa i qunr i zxcxr i rys so o programa saberia que x = 0
e ele convertesse os x para 0 , todos o a por 1 e depois mandasse para uma string algo assim

tipo um save de jogo
espero que me entendam
OBRIGADO a ajuda (adiantado)
ASHKATCHUP 11/08/2011 16:49:24
#381453
Procure um exemplo de criptografia. Existem bilhoes ai pelo forum.
E mudar a extensão... é meramente visual. Em vez de salvar como txt, salva como o que quiser.
FABIOPAGANINI 11/08/2011 16:50:21
#381454
ola meu amigo.
a primeira coisa que tu precisa saber é:
leituras de arquivos no .net não difere de extenção.
vc pode ler e salvar arquivos com a extenção que quiser.

a segunda coisa é que vc precisa criar uma classe que possa criptografar e decriptografar seu dados.
uma simples classe que tenha as seguintes funções:


public function Encript(value as string) as string
public function Decript(value as string) as string

na hora de salvar seu conteudo faça

arquivo.writeline (encript(linha));

na hora da leitura faça:

linha = decript(arquivo.readline);

como vc vai separar as colunas do seu arquivo por ; , vc poderua fazer jus do split para separar as colunas:
exemplo:

dim ValorDasColunas() as string = linha.split([ô];[ô])

valordascolunas(0) [ô] este é o valor oferecido na primeira coluna da linha lida
valordascolunas(1) [ô] este é o valor oferecido na segunda coluna da linha lida
...
valordascolunas(n) [ô] este é o valor oferecido na coluna n+1 da linha lida


abaixo links para estudo:

Criptografia simples:
http://www.macoratti.net/vbn_cpt1.htm

Tratamento de arquivos:
http://www.macoratti.net/vbn_txt.htm

Bons estudos




OWNIMS 11/08/2011 17:00:19
#381459
po@#a bixo vcs respondem rapido mesmo vlw vo testa aqui mas tipo
queria saber como fazer tipo isso

textbox1.text = local.readline1 [ô]para ler a linha 1 inteira
ow
writeline5 para salvar na linha 5 no documento de texto
^^
FILMAN 11/08/2011 17:28:06
#381467
FABIOPAGANINI 11/08/2011 17:37:34
#381470
no .net (quando falo .net falo todas as linguagens que trabalham com ela)
vc pode ler um arquivo assim

Dim i As New System.IO.StreamReader([Ô]c:    este.abc[Ô])

com isto, ler linha por linha da seguinte forma:

Dim linha As String

Do
linha = i.ReadLine()
If linha = Nothing Then Exit Do
[ô] a cada ok que der no msgbox, uma nova linha é lida até que chege no final do arquivo
MsgBox(linha)

Loop

ou se preferir, ler todo o arquivo em uma coleção de string:

   
Dim i() As String = System.IO.File.ReadAllLines([Ô]c:    este.abc[Ô])

For Each linha As String In i
[ô] a cada ok que der no msgbox, uma nova linha é lida até que chege no final do arquivo
MsgBox(linha)
Next


FABIOPAGANINI 11/08/2011 17:47:51
#381478
agora da uma olhada em como criar, ler, alterar e salvar:

   

[ô]criando arquivo
Dim DadosParaCriar() As String = New String() {[Ô]Player;Level;Pontuacao;SalvoEm[Ô], [Ô]Player1;5;66566;1/1/2011[Ô], [Ô]Player1;6;999566;2/1/2011[Ô]}

[ô]Abrindo/criando arquivo para inclusao de dados
Dim file As New IO.StreamWriter([Ô]c:    este.abc[Ô])
For Each item As String In DadosParaCriar
[ô]percorrendo linha por linha da variavel DadosParaCriar e adicionando no arquivo
file.WriteLine(item)
Next
[ô]Fechando Arquivo
file.Close()


[ô]abrindo arquivo para leitura
Dim DadosLidos() As String = System.IO.File.ReadAllLines([Ô]c:    este.abc[Ô])

For Each linha As String In DadosLidos
[ô] a cada ok que der no msgbox, uma nova linha é lida até que chege no final do arquivo
MsgBox(linha)
Next


[ô]Alterando os dados na linha 2, lembrando que 0 é linha 1, um é linha 2 , e '2 é linha 3 e assim por adiante
DadosLidos(1) = [Ô]Player2;9;999566;6/1/2011[Ô]

[ô]salvando dados no arquivo
Dim fileASalvar As New IO.StreamWriter([Ô]c:    este.abc[Ô])
For Each item As String In DadosLidos
[ô]percorrendo linha por linha da variavel DadosLidos e adicionando no arquivo
file.WriteLine(item)
Next
[ô]Fechando Arquivo
file.Close()

[ô]abrindo arquivo para leitura dos novos dados
Dim DadosRelidos() As String = System.IO.File.ReadAllLines([Ô]c:    este.abc[Ô])

For Each linha As String In DadosRelidos
[ô] a cada ok que der no msgbox, uma nova linha é lida até que chege no final do arquivo
MsgBox(linha)
Next

OWNIMS 11/08/2011 18:03:42
#381483
Vlw cara brigadaum
deu certinho ake


so nao intendi esses negocio de encripitar na quele link que me mandou Oo

muito complicado os codigos

edit: no caso ele salva e carrega no meu caso seria
encripita o documento | salva em algum lugar | carrega na tela de inicio do [Ô]jogo[Ô]
ASHKATCHUP 11/08/2011 18:15:02
#381485
Explica direitinho o que tu quer fazer....
Ou posta um esquema de idéias ou o código do projeto.
Criptografia basicamente é feita por algoritmos prontos... é MUITO dificil criar um.
FABIOPAGANINI 11/08/2011 18:41:28
#381490
Citação:

:
Explica direitinho o que tu quer fazer....
Ou posta um esquema de idéias ou o código do projeto.
Criptografia basicamente é feita por algoritmos prontos... é MUITO dificil criar um.



não é dificil não,
criei um exclusivo para comunicação entre um MovieClip do Flash com AS3 e um webservises em C# para aplicativos para Facebook, me consumiu uma média de 4 horas de planejamento e 1 de desenvolvimento.




Citação:

:
Vlw cara brigadaum
deu certinho ake


so nao intendi esses negocio de encripitar na quele link que me mandou Oo

muito complicado os codigos

edit: no caso ele salva e carrega no meu caso seria
encripita o documento | salva em algum lugar | carrega na tela de inicio do [Ô]jogo[Ô]



vamos lá, para nao te complicar, vamos usar uma ja pronta do .net
a RijndaelManaged


   

Imports System.IO
Imports System
Imports System.Security.Cryptography

Public Class Game
Private myRijndael As New RijndaelManaged()
Sub CarregaGame()

Dim bytes() As Byte = IO.File.ReadAllBytes([Ô]c:\save.abc[Ô])
Dim texto As String = Decodifica(bytes)



End Sub


Sub SalvaGame()

Dim texto As String = [Ô]conteudo para salvar[Ô]
Dim bytes() As Byte = Codifica(texto)

Dim arquivo As New FileStream([Ô]c:\save.abc[Ô], FileMode.OpenOrCreate)
Dim str As New IO.BinaryWriter(arquivo)


arquivo.Flush()
arquivo.Close()


End Sub

Public Function Codifica(Texto As String) As Byte()
Return encryptStringToBytes_AES(Texto, myRijndael.Key, myRijndael.IV)
End Function

Public Function Decodifica(Bytes As Byte()) As String
Return decryptStringFromBytes_AES(Bytes, myRijndael.Key, myRijndael.IV)
End Function

[ô]agora de momento ignore esta função. mas em breve estude outros metodos de criptografia
Private Function encryptStringToBytes_AES(ByVal plainText As String, ByVal Key() As Byte, ByVal IV() As Byte) As Byte()
[ô] Check arguments.
If plainText Is Nothing OrElse plainText.Length <= 0 Then
Throw New ArgumentNullException([Ô]plainText[Ô])
End If
If Key Is Nothing OrElse Key.Length <= 0 Then
Throw New ArgumentNullException([Ô]Key[Ô])
End If
If IV Is Nothing OrElse IV.Length <= 0 Then
Throw New ArgumentNullException([Ô]IV[Ô])
End If

[ô] Declare the RijndaelManaged object
[ô] used to encrypt the data.
Dim aesAlg As RijndaelManaged = Nothing

[ô] Declare the stream used to encrypt to an in memory
[ô] array of bytes.
Dim msEncrypt As MemoryStream = Nothing

Try
[ô] Create a RijndaelManaged object
[ô] with the specified key and IV.
aesAlg = New RijndaelManaged()
aesAlg.Key = Key
aesAlg.IV = IV

[ô] Create an encryptor to perform the stream transform.
Dim encryptor As ICryptoTransform = aesAlg.CreateEncryptor(aesAlg.Key, aesAlg.IV)

[ô] Create the streams used for encryption.
msEncrypt = New MemoryStream()
Using csEncrypt As New CryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write)
Using swEncrypt As New StreamWriter(csEncrypt)

[ô]Write all data to the stream.
swEncrypt.Write(plainText)
End Using
End Using

Finally
[ô] Clear the RijndaelManaged object.
If Not (aesAlg Is Nothing) Then
aesAlg.Clear()
End If
End Try
[ô] Return the encrypted bytes from the memory stream.
Return msEncrypt.ToArray()

End Function

[ô]agora de momento ignore esta função. mas em breve estude outros metodos de criptografia
Private Function decryptStringFromBytes_AES(ByVal cipherText() As Byte, ByVal Key() As Byte, ByVal IV() As Byte) As String
[ô] Check arguments.
If cipherText Is Nothing OrElse cipherText.Length <= 0 Then
Throw New ArgumentNullException([Ô]cipherText[Ô])
End If
If Key Is Nothing OrElse Key.Length <= 0 Then
Throw New ArgumentNullException([Ô]Key[Ô])
End If
If IV Is Nothing OrElse IV.Length <= 0 Then
Throw New ArgumentNullException([Ô]IV[Ô])
End If

[ô] Declare the RijndaelManaged object
[ô] used to decrypt the data.
Dim aesAlg As RijndaelManaged = Nothing

[ô] Declare the string used to hold
[ô] the decrypted text.
Dim plaintext As String = Nothing

Try
[ô] Create a RijndaelManaged object
[ô] with the specified key and IV.
aesAlg = New RijndaelManaged()
aesAlg.Key = Key
aesAlg.IV = IV

[ô] Create a decrytor to perform the stream transform.
Dim decryptor As ICryptoTransform = aesAlg.CreateDecryptor(aesAlg.Key, aesAlg.IV)

[ô] Create the streams used for decryption.
Using msDecrypt As New MemoryStream(cipherText)
Using csDecrypt As New CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read)
Using srDecrypt As New StreamReader(csDecrypt)

[ô] Read the decrypted bytes from the decrypting stream
[ô] and place them in a string.
plaintext = srDecrypt.ReadToEnd()
End Using
End Using
End Using

Finally

[ô] Clear the RijndaelManaged object.
If Not (aesAlg Is Nothing) Then
aesAlg.Clear()
End If
End Try
Return plaintext

End Function
End Class







simples,
e salvando em binário.
mas assim que vc esfriar a cabeça, de mais uma lida no tutorial do macoratti, ele nao é complicado
Tópico encerrado , respostas não são mais permitidas