当前位置: 首页 > 知识库问答 >
问题:

获取项目src中文件的路径,并将其传递给fileoutputstream进行覆盖

文德曜
2023-03-14

通过getResourcestream成功访问了一个属性文件,并使用fileinputstream读取。现在我需要在追加一个新属性后覆盖相同的文件

问题:无法获取fileoutputstream覆盖所需的同一文件的路径。

属性文件位于src/main/resources中。并尝试从src/main/java/com/web/my更新。班

    Properties prop = new Properties();
    InputStream in = getClass().getClassLoader().getResourceAsStream("dme.properties");
    FileOutputStream out = null;
    try {
         prop.load(in);}  // load all old properties
    catch (IOException e) {}
    finally {try { in.close(); } catch (IOException e) {} }
    prop.setProperty("a", "b"); //new property
    try {
        out = new FileOutputStream("dme.properties");
        prop.store(out, null);} //overwrite
    catch (IOException e) {} 
    finally {try {out.close();} catch (IOException e) {} }
  }

共有1个答案

逄征
2023-03-14

您可以从src/main/resources获取资源URL,并使用它来读取和写入文件,而不是获取InputStream

Properties properties = new Properties();
File file = new File(this.getClass().getResource("/dme.properties").toURI());
try (InputStream is = new FileInputStream(file)) {
    properties.load(is);
}
properties.setProperty("a", "b");
try (OutputStream os = new FileOutputStream(file)) {
    properties.store(os, null);
}
 类似资料:
  • 问题内容: 我想以编程方式访问将包含在我的项目文件夹中的特定文件。有没有办法做到这一点?如果是这样,我将文件放在项目文件夹中的什么位置,获取文件路径的一些简单代码是什么? 问题答案: 将文件放在项目的根文件夹中。然后获取文件URL,路径和其他详细信息,如下所示: 编辑: 替代方法(如果文件在您的类路径中,例如,将文件放在“ src”文件夹中,并确保编译后将其移入“ bin”或“ classes”文

  • 嘿,我是一个JAVA新手,我正在做一个项目,在这一点上我被困住了,我想做的是...我已经做了一个JTree列出了其中的一些项,现在我想获得一个JTree的选定项的文本,将它存储在一个字符串对象中,并将它传递给另一个类,在那里我可以对它做进一步的操作...这是我试过的 当我运行程序时,在getVal()中返回一个空值,而不是JTree项的文本,请帮助。

  • 我想从maven资源目录(src/main/resources)中读取我的属性文件。属性文件的路径称为: 该文件名为test。财产。我使用了JSF2.2、Eclipse和Java Web项目,webapp在Tomcat7上运行 我在mavenpom.xml文件中写道: 并在我的java文件中写入:Properties prop=new Properties(); 但是它没有找到属性文件。我可以读出

  • 我有一个带有文件输入字段的表单: 然后我做的东西与此图像文件提交: 我要保存图像的目录名为,与上面的目录相同。 您可能会注意到,在上面我在类insertBlog`的代码是: 当用户填写表单时,除了图像信息之外,它还将所有其他信息正确地存储在MySQL表中。此外,它不会将实际图像存储在文件夹中。那么,如何让这个脚本将图像上传到文件夹,并将其路径存储在mysql表中呢。目前,它没有将图像存储在数据库中

  • 我有一个巨大的文件,里面有大约100万条记录。我的要求是从文件中读取记录,并具有可配置数量的线程,这些线程跨多个线程处理记录。 目前,我正在使用单个线程读取该文件,并将其存储到一个集合中。 如何将集合元素按顺序传递给不同的线程进行进一步处理?

  • 我正在尝试反应表,对反应一般是很新的。现在,在下面的代码中,一个本地JSON(mock_data.JSON)被传递到常量数据中。我想用从URL获取的数据替换本地JSON。我怎么能那样做?谢谢:)