使用java在文件中插入String

时间:2017-01-16 11:19:55

标签: java xml file-io

我正在尝试在xml文件中插入字符串值,但我没有准确地使用java进行插入。

textFieldChoose.setText(fileChooser.getSelectedFile().toString());

                    String str="";

                  final JFrame msgframe= new JFrame();
                  msgframe.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
                  str= textFieldChoose.getText();
                  JOptionPane.showMessageDialog(textFieldChoose, str);
                  ClassLoader classLoader = getClass().getClassLoader();
                  str= textFieldChoose.getText();

我可以将值存储在字符串中。每当我的应用程序在字符串中选择另一个值时,我都需要替换该值。

xml: -

?xml version="1.0" encoding="UTF-8"?>

<project name="org.world.rg" default="rg.init" basedir=".">

  <property name="dita.dir" location="${basedir}/../../.."/>

  <target name="rg.init" description="build PDF" depends="pdf"/>


  <target name="pdf" description="build PDF">
    <ant antfile="${dita.dir}/build.xml">
      <property name="args.input" location=""/>

我需要在location =""/>中插入该字符串值。有什么可能的方法?

2 个答案:

答案 0 :(得分:0)

您可以使用XPATH表达式更新此元素:

//project/target/ant/property ...

How to read XML using XPath in Java

答案 1 :(得分:0)

使用java 8 API文件的简单方法,但我不认为它是最好的,它将是:

1)读取文件 2)替换价值 3)写文件

byte[] fileContent = Files.readAllBytes(Paths.get("example.xml"));
String content = new String(fileContent)
                    .replace("location =\"\"", "location =\"" + str + "\"");
Files.write(Paths.get("example.xml"), xmlString.getBytes());