public class FragmentRecording extends Fragment {
private MediaRecorder recorder;
private String OUTPUT_FILE;
FloatingActionButton stop_fab;
@Override
public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState){
View view=inflater.inflate(R.layout.fragment_recording, container,false);
stop_fab=(FloatingActionButton)view.findViewById(R.id.stop_fab_xml);
//SALIDA DEL ARCHIVO
OUTPUT_FILE=Environment.getExternalStorageDirectory()+"/VoiceRecorder.3gpp";
//GENERAMOS UN METODO PARA SABER LIBERAR EL MICROFONO
LiberarMicro();
//Crea el archivo
File outfile=new File(OUTPUT_FILE);
//Si existe lo borra
if(outfile.exists()){
outfile.delete();
}
//Empieza Proceso de Grabacion
try {
StartRecord();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
stop_fab.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
StopRecord();
}
});
return view;}
protected void StopRecord() {
// TODO Auto-generated method stub
if(recorder!=null){
recorder.stop();
}
}
private void StartRecord() throws IllegalStateException, IOException {
// TODO Auto-generated method stub
recorder=new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder.setOutputFile(OUTPUT_FILE);
recorder.prepare();
recorder.start();
}
private void LiberarMicro() {
// TODO Auto-generated method stub
if(recorder!=null){
recorder.release();
}
}}
File f = new File(Environment.getExternalStorageDirectory() + "/somedir");
if(f.isDirectory()) {
//Write code for the folder exist condition
}else{
// create a File object for the parent directory
File wallpaperDirectory = new File("/sdcard/Wallpaper/");
// have the object build the directory structure, if needed.
wallpaperDirectory.mkdirs();
// create a File object for the output file
File outputFile = new File(wallpaperDirectory, filename);
// now attach the OutputStream to the file object, instead of a String representation
FileOutputStream fos = new FileOutputStream(outputFile);
}
上面的代码将检查wheather文件夹是否存在。如果没有,创建一个文件夹,并将文件保存到该文件夹。
您需要在清单中提供以下权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
如果你有困惑就告诉我。如果我帮忙,请投票:)快乐的编码
但我想创建一个文件夹与应用程序的名称,并能够保存录制的音频到该文件夹。有人能告诉我怎么做吗?我成功地创建了文件夹,但我不知道如何将mediaFile移动到其中:
在shell脚本中,我想从某个URL下载一个文件,并将其保存到特定的文件夹中。使用命令将文件下载到特定文件夹时应使用的特定CLI标志是什么,或者如何获得该结果?
我正在尝试从麦克风录制,添加一些效果,并将其保存到文件中 我已经从AndroidNDK中包含的本地音频示例开始。我设法添加了一些混响并播放它,但我没有找到任何关于如何完成此操作的示例或帮助。 任何帮助都是受欢迎的。
我的应用程序将一些文件保存到设备上的数据/数据文件夹中。保存远程文件后,我会处理这些文件,并将它们复制到其他文件夹中。在之前测试过的所有设备上,All都能正常工作,但在galaxy s3上会生成空指针异常。似乎我不被允许在那个文件夹上写或处理文件!但只有新的星系s3!我也无法使用EclipseDDMS文件浏览器在数据文件夹中找到任何文件,而在模拟器(相同的android版本)中,我可以正确查看所有
问题内容: 我正在尝试使用HttpClient下载PDF文件。我可以获取文件,但是我不确定如何将字节转换为PDF并将其存储在系统中的某个位置 我有以下代码,如何将其存储为PDF? 问题答案: 编辑: 您还可以使用BufferedOutputStream和BufferedInputStream来加快下载速度: