【问题标题】:Classpath configuration for writing into a json file用于写入 json 文件的类路径配置
【发布时间】:2018-02-10 07:00:48
【问题描述】:

在一个 Eclipse 项目中,我想创建一个 json 文件,该文件存在于同一个项目构建中,并在代码中给出其类路径,以便将数据存储到该 json 文件中。

但是,如果我像下面这样尝试,数据不会写入文件

 try (Writer writer = new FileWriter("/src/test/java/operatorList.json"))   {
                Gson gson = new GsonBuilder().create(); 
            gson.toJson(foo, writer); 
            writer.flush();
           writer.close();
        System.out.println("JSON :: "+gson.toJson(foo));
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } 
  }

但是当我像下面这样更改文件位置时,它工作得很好

try (Writer writer = new FileWriter("G://operatorList.json")) {
                Gson gson = new GsonBuilder().create(); 
            gson.toJson(foo, writer); 
            writer.flush();
           writer.close();
        System.out.println("JSON :: "+gson.toJson(foo));
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } 
}

请帮助获取同一项目中的文件位置

【问题讨论】:

    标签: json spring spring-mvc classloader filewriter


    【解决方案1】:

    尝试在 FileWriter 构造函数中使用“src/test/java/operatorList.json”而不是使用“/src/test/java/operatorList.json”作为文件名。 我尝试使用 Java 8 编译器进行简单测试,它正在工作。

        java.io.FileWriter fileWriter = new java.io.FileWriter("src/test.txt");
        fileWriter.write("Test123");
        fileWriter.flush();
        fileWriter.close();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    

    【讨论】:

      猜你喜欢
      • 2012-03-13
      • 1970-01-01
      • 2022-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多