error al copiar archivo byte x byte
Publicado por Gonzalo (112 intervenciones) el 05/09/2016 05:42:50
Buenos dias a todos.
se que esto es java para principiantes pero me esta pasando algo curioso con este codigo, no puedo copiar un archivo y no encuentro el error, me pueden ayudar?
gracias.
asi se mandan abrir los archivos
estas funciones leen y escriben
esta funcion la use para leer y escribir, la modifique para solo leer
no entiendo porque el byte que esta marcado se modifica de Hex30 a Hex31, no se donde esta el error se supone que lee48 pero lee 49.
alguien que me pueda ayudar le agradeceria mucho.
salu2

se que esto es java para principiantes pero me esta pasando algo curioso con este codigo, no puedo copiar un archivo y no encuentro el error, me pueden ayudar?
gracias.
asi se mandan abrir los archivos
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
case "rb":
try
{
fileinputstream = new FileInputStream(MyFile);
}catch(FileNotFoundException e)
{
FileOk=false;
LogFile.Write(e.getMessage());
}
break;
case "wb":
try
{
fileoutputstream = new FileOutputStream(MyFile);
} catch (FileNotFoundException e)
{
FileOk=false;
LogFile.Write(e.getMessage());
}
break;
estas funciones leen y escriben
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public int ReadByte()
{
int Ok=-1;
try
{
Ok= fileinputstream.read();
} catch (IOException e)
{
LogFile.Write(e.getMessage());
}
return Ok;
}
public void WriteByte(int MyByte)
{
try
{
fileoutputstream.write(MyByte);
} catch (IOException e)
{
LogFile.Write(e.getMessage());
}
}
esta funcion la use para leer y escribir, la modifique para solo leer
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
private static void CopyMp3(String Mp3)
{
FileControl FileInMp3 = new FileControl(Mp3,"rb");
//FileControl FileOutMp3 = new FileControl("test.mp3","wb");
int c;
int i=3*18;
int f=4*18;
int x;
for(x=0;x<100;x++)
{
c = FileInMp3.ReadByte();
if
(
x>=i &
x<=f
)
System.out.println(c);
}
/*
while ((c = FileInMp3.ReadByte()) != -1)
{
FileOutMp3.WriteByte(c);
}
*/
FileInMp3.Close();
//FileOutMp3.Close();
}
no entiendo porque el byte que esta marcado se modifica de Hex30 a Hex31, no se donde esta el error se supone que lee48 pero lee 49.
alguien que me pueda ayudar le agradeceria mucho.
salu2

Valora esta pregunta


0