在公共内部存储中添加文件夹?

时间:2014-11-04 09:04:44

标签: android jxls

我创建 Excel文件将其存储在内部存储中,但是无法做到。它只在app存储目录中创建。不能在public中看到。如何创建文件夹和存储该文件夹中的文件?任何人都知道帮我解决这个问题。

文件创建编码

 public String generate(String file_name,String path) {

    try {

        f = new File(activity.getFilesDir(), path);
        if (!f.exists()) {
           f.mkdirs();
        }


        file = new File(f.getAbsolutePath(), file_name);
        if (file.createNewFile()) {
            file.createNewFile();
        }

        wb_setting = new WorkbookSettings();
        wb_setting.setLocale(new Locale("en", "EN"));

        workbook = Workbook.createWorkbook(file, wb_setting);
        workbook.createSheet("Report", 0);
        excelSheet = workbook.getSheet(0);
        createLabel(excelSheet);
        createContent(excelSheet);

        workbook.write();
        workbook.close();

        file_path_alert_builder = new AlertDialog.Builder(activity);
        file_path_alert_builder.setTitle("File path");
        file_path_alert_builder.setMessage(""+file).setCancelable(true).setPositiveButton("OK",new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {

                dialogInterface.dismiss();

            }
        });

        file_path_dialog = file_path_alert_builder.create();
        file_path_dialog.show();
    }catch (JXLException jxl_e) {
        jxl_e.printStackTrace();
    } catch (MalformedURLException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    return null;
}

2 个答案:

答案 0 :(得分:1)

您必须选择存储文件的正确路径。有多种选择

内部存储空间

  • 应用程序内部(最终用户无法从外部访问)
  • 缓存目录(如果系统空间不足,则可以清除)

外部存储(验证它是否可用并使用它)虽然它是公共的,但有两种类型

  • 公共
  • 私有(由用户和其他应用技术可访问,因为它们位于外部存储上,它们是实际上不会为应用外部用户提供价值的文件。)

可以使用android提供的不同API访问每个路径位置。见http://developer.android.com/training/basics/data-storage/files.html

答案 1 :(得分:0)

您对公众可见的含义是什么?其他应用程序访问?如果是这种情况,请使用: 而是getExternalFilesDir()