我现在做客户端rcp开发时,需要修改properties配置文件,结果出现了这种情况。通过getResourceAsStream读取的时候,虽然已经修改成功,可以从配置文件查看,可是读取的仍然是修改前的内容。通过绝对路径new file的时候呢,读取的是新内容,可是这种情况下,到真实打包运行时候,会报错,找不到这个真实路径。请问高手,如何解决这种问题呢?

解决方案 »

  1.   

    getResourceAsStream读的路径应该是和你的class文件所在路径一致的
    所以,偶觉得通过这个方法获取属性文件的前提是以你class文件为标准的,
    编译过一次代码,就会重新去读那个属性文件
    否则,你的class文件没有变化的话,即便修改了属性文件,也不会反映出来吧个人意见,仅供参考,还请高手指教
      

  2.   

    getResourceAsStream读的路径应该是和你的class文件所在路径一致的
    所以,偶觉得通过这个方法获取属性文件的前提是以你class文件为标准的,
    编译过一次代码,就会重新去读那个属性文件
    否则,你的class文件没有变化的话,即便修改了属性文件,也不会反映出来吧个人意见,仅供参考,还请高手指教
      

  3.   

    比如说你的类叫做Test
    那末可以用 
    String path = Test.class.getResource("abc.properties").getPath()
    这样就可以返回属性文件的路径了
      

  4.   

    如果这样的话,返回的还是相对路径啊,我试过了。
    毕竟用class去调用的,肯定是编译过的,不知道我这样理解对否?