안드로이드 개발 질문/답변
(글 수 45,052)
mMediaPlayer = new MediaPlayer();
String filename = "/mnt/sdcard/day.3gp";
FileInputStream fis;
fis = new FileInputStream(filename);
BufferedInputStream bis = new BufferedInputStream(fis);
byte[] buf = new byte[3145728]; // 3MB
int readCount = -1;
long size = 0;
boolean append = true;
filename = "/data/data/com.kpp.video/onefile.3gp";
File myfile = new File(filename);
boolean success = myfile.createNewFile();
Log.i("MyLog", "file create success: " + success);
int i = 0;
while (size < 10485760) { // 10M정도까지 받았다면
Log.i("MyLog","append: "+append);
fis.skip(size);
if ((readCount = bis.read(buf)) != -1) {
FileOutputStream fos = new FileOutputStream(filename, append);
BufferedOutputStream bos = new BufferedOutputStream(fos);
bos.write(buf);
//bos.write(buf, size, readCount);
size += readCount;
Log.i("MyLog", "readCount: " + readCount + " size: "+ size);
if(i == 0){
fd = fos.getFD();
}i++;
fos.flush();
// bos.close();
} else {
append = false;
break;
}
}
Log.i("MyLog", "file end");
bis.close();
mMediaPlayer.setDataSource(fd);



