【问题标题】:Android - read file from internal storage public folderAndroid - 从内部存储公共文件夹中读取文件
【发布时间】:2013-11-19 06:59:59
【问题描述】:

在我为 android 制作的应用程序中,我想添加数据库导入功能。为此,我已经设计了从 Web 导入(通过 php 脚本的 MySql 数据库)和从外部存储导入(通过 CSV 文件)。

现在我想添加通过 CSV 从内部存储导入的选项(适用于没有任何外部存储的用户)。那么,请您指教:

1) 是否建议添加该选项? 2)如果是,那么我如何从内部存储的公共文件夹中读取文件? 3)我应该针对哪个文件夹?或者我应该只使用我的应用程序的数据文件夹?

此外,我们非常欢迎您提供这方面的任何其他建议。

【问题讨论】:

    标签: android


    【解决方案1】:

    要从内部存储读取数据,您需要您的应用文件夹并从此处读取内容:

    File yourFile = new File(context.getFilesDir() + "/" + "File_Name.extension");
    FileInputStream fis = null;
            try {
                fis = new FileInputStream(yourFile);
                InputStreamReader isr = new InputStreamReader(fis);
                BufferedReader bufferedReader = new BufferedReader(isr);
                StringBuilder sb = new StringBuilder();
                String line;
                while ((line = bufferedReader.readLine()) != null) {
                    sb.append(line);
                }
                return sb.toString();
            } catch (IOException e) {
                e.printStackTrace();
                return "";
            }
    

    你也可以使用这种方法:

    FileInputStream fis = context.openFileInput("hello.txt", Context.MODE_PRIVATE);
       InputStreamReader isr = new InputStreamReader(fis);
       BufferedReader bufferedReader = new BufferedReader(isr);
       StringBuilder sb = new StringBuilder();
       String line;
       while ((line = bufferedReader.readLine()) != null) {
           sb.append(line);
       }
    

    【讨论】:

    • 把CSV文件放到app文件夹里方便吗?
    猜你喜欢
    • 2020-09-13
    • 1970-01-01
    • 1970-01-01
    • 2021-09-08
    • 2012-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多