elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Borrar bytes de archivo y guardar
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: Borrar bytes de archivo y guardar  (Leído 10,072 veces)
Mr. God

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: Borrar bytes de archivo y guardar
« Respuesta #10 en: 5 Abril 2010, 11:13 am »

Jeje, ahora ya casi perfecto, en un principio la cosa era que copiase los 17 bytes que están en una  posición en concreto, es decir, desde el byte 93 (Offset 0000004D) del archivo hasta el byte 110 (Offset 0000005C) y los copiase debajo del 110, si ya por ultimo me pueden ayudar con eso seria genial :D

p.d. he probado desplazándome con Seek, pero me da fallo... en C# soi bastante novatillo jeje  :-X :-X


« Última modificación: 5 Abril 2010, 11:15 am por Mr. God » En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Borrar bytes de archivo y guardar
« Respuesta #11 en: 5 Abril 2010, 15:08 pm »

Código
  1. // Generamos el archivo
  2. StreamWriter sw = new StreamWriter(Application.StartupPath + Path.DirectorySeparatorChar + "archivo3.txt", false);
  3. sw.Write("".PadLeft(93) + "Hola, esto es un ejemplo" + "".PadLeft(100, '0'));
  4. sw.Flush();
  5. sw.Close();
  6.  
  7. // .................................................
  8. // En otro codigo (otro boton, etc, sino genera error con el "sw" anterior
  9. // .................................................
  10.  
  11. // Parametros
  12. int offsetInicio = 93;
  13. int offsetFinal = 110;
  14. int repeticiones = 4;
  15. // esta demas, pero es que en .net piden la longitud, no la ubicacion final :P
  16. int lenOffset = offsetFinal - offsetInicio;
  17.  
  18. FileStream sr = File.Open(Application.StartupPath + Path.DirectorySeparatorChar + "archivo3.txt", FileMode.Open);
  19. // Va hacia el inicio del offset
  20. sr.Seek(offsetInicio, SeekOrigin.Begin);
  21. byte[] frase = new byte[lenOffset];
  22. // Copiamos los 17 caracteres
  23. sr.Read(frase, 0, lenOffset);
  24. sr.Seek(0, SeekOrigin.Begin);
  25.  
  26. FileStream sw = File.Open(Application.StartupPath + Path.DirectorySeparatorChar + "archivo4.txt", FileMode.Create);
  27. // Copiamos lo que estaba antes del offset
  28. while (sr.Position < offsetFinal)
  29. {
  30.    sw.WriteByte(Convert.ToByte(sr.ReadByte())); sw.Flush();
  31. }
  32.  
  33. // repetimos el offset
  34. for (int i = 0; i <= repeticiones; i++)
  35. {
  36.    sw.Write(frase, 0, frase.Length); sw.Flush();
  37. }
  38.  
  39. // copiamos el resto del archivo
  40. while (sr.Position < sr.Length)
  41. {
  42.    sw.WriteByte(Convert.ToByte(sr.ReadByte()));sw.Flush();
  43. }
  44.  
  45. sw.Close();
  46. sr.Close();
  47.  

Espero que te sirva :)


En línea

43H4FH44H45H4CH49H56H45H
Wiki

Desconectado Desconectado

Mensajes: 502



Ver Perfil
Re: Borrar bytes de archivo y guardar
« Respuesta #12 en: 6 Abril 2010, 05:50 am »

Puede ser asi tb:

Código
  1. byte[] leer = File.ReadAllBytes("C:\\1.txt");
  2. FileStream fstream = new FileStream("C:\\2.txt", FileMode.Create, FileAccess.Write);
  3. BinaryWriter escribir = new BinaryWriter(fstream);
  4. for (int i1 = 1; i1 < leer.Length; i1++)
  5. {
  6.   escribir.Write(leer[i1]);
  7.      if (i1 == 109)
  8.       {
  9.          for (int i = 93; i<111; i++)
  10.             {
  11.                escribir.Write(leer[i]);
  12.              }
  13.         }
  14. }
  15. escribir.Close();
  16. fstream.Close();
En línea


-R IP
:0100
-A 100 
2826:0100 MOV AH,09
2826:0102 MOV DX,109
2826:0105 INT 21
2826:0105 MOV AH,08
2826:0105 INT 21
2826:0107 INT 20
2826:0109 DB 'MI NICK ES CODELIVE.$' 
2826:0127 
-R BX
:0000
-R CX
:20
-N CODELIVE.COM
-W
Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines