java - 获取本地 Android 项目文件的文件路径

标签 java android file

我想以编程方式访问将包含在我的项目文件夹中的特定文件。有没有办法做到这一点?如果是这样,我应该将文件放在我的项目文件夹中的什么位置,以及获取其文件路径的一些简单代码是什么?

private void saveFileToDrive() {
        Thread t = new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    java.io.File spreadsheet = new java.io.File("Untitled spreadsheet.xlsx");
                    String filePath = spreadsheet.getAbsolutePath();
                    System.out.println("file path is"+filePath);

                    URL fileURL = getClass().getClassLoader().getResource("Untitled spreadsheet.xlsx");
                    String filePath2 = fileURL.getPath();
                    System.out.println("file path2 is"+filePath2);

                    java.io.File fileContent = new java.io.File(filePath);
                    FileContent mediaContent = new FileContent("application/vnd.ms-excel", fileContent);

                    File body = new File();
                    body.setTitle(fileContent.getName());
                    body.setMimeType("application/vnd.ms-excel");


                    File file = service.files().insert(body, mediaContent).setConvert(true).execute();

                    if (file != null) {
                        showToast("File uploaded: " + file.getTitle());
                    }
                    else
                             ;
                } catch (UserRecoverableAuthIOException e) {

                    startActivityForResult(e.getIntent(), REQUEST_AUTHORIZATION);
                } catch (IOException e) {

                    e.printStackTrace();
                }
            }
        });
        t.start();
    }

最佳答案

将文件放在项目的根文件夹中。然后获取文件 URL、路径和其他详细信息:

   File file = new File("test.txt");
   String filePath = file.getAbsolutePath();

编辑: 替代方法(如果文件在您的类路径中,例如将文件放在“src”文件夹中,并确保它在编译后移动到“bin”或“classes”文件夹中):

  URL fileURL = getClass().getClassLoader().getResource(fileName);
  String fileName = fileURL.getFile();
  String filePath = fileURL.getPath();

关于java - 获取本地 Android 项目文件的文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13616876/

相关文章:

java - Android - 多个 Activity 使用一个类

android - fragment 不显示第二次使用

android - 如何从屏幕底部获取弹出菜单?

java - 关闭资源总是很重要吗?

java - Selenium 测试 - Firefox 警报立即消失

java - Webelement getText 方法 Selenium WebDriver 获取错误

java - 如果在 Java 流中不为空则设置一个值

Android studio com.google.android.exoplayer2 不存在报错

apache - 如何使用Apache Camel 删除Grails中的大文件

linux - 用于在文本文件中查找模式并返回整行的 bash 脚本