Java XML字符串替换

Java XML字符串替换,java,xml,Java,Xml,如何替换xml中的字符串 我已经 我试着替换 xmlInStr.replace("src/main/castor/GridDocument.xsd".toCharArray().toString(), "correspondenceCastor/src/main/castor/GridDocument.xsd".toCharArray().toString()); 它不起作用了。有什么线索吗 这样管理 int indx=from.indexOf(from); xmlInStr=xmlInStr

如何替换xml中的字符串

我已经

我试着替换

xmlInStr.replace("src/main/castor/GridDocument.xsd".toCharArray().toString(), "correspondenceCastor/src/main/castor/GridDocument.xsd".toCharArray().toString());
它不起作用了。有什么线索吗

这样管理

int indx=from.indexOf(from);
xmlInStr=xmlInStr.substring(0,indx)+to+xmlInStr.substring(indx+from.length())

String.replaceAll
将正则表达式作为第一个参数。改用
replace

String.replaceAll
将正则表达式作为第一个参数。使用
replace

如果您使用XML解析器来解析和操作XML,不要尝试使用基于正则表达式的字符串替换机制,它将不起作用,只会带来痛苦和痛苦。

您使用XML解析器来解析和操作XML,不要尝试使用基于正则表达式的字符串替换机制—它不会工作,只会带来痛苦。

无论是
replace()
还是
replaceAll()
都不会实际替换字符串中的任何内容(字符串是不可变的)。它们返回一个新字符串,但您只需放弃返回值,这就是为什么您在任何地方都看不到它。顺便说一下,这个
.tocharray().toString()
对我来说完全没用。字符文字已经是一个完整的字符串

但是您确实应该使用XML解析器。除非您的任务非常简单,并且您完全确定不会替换任何不应该替换的内容。

无论是
replace()
还是
replaceAll()
都不会替换字符串中的任何内容(字符串是不可变的)。它们返回一个新字符串,但您只需放弃返回值,这就是为什么您在任何地方都看不到它。顺便说一下,这个
.tocharray().toString()
对我来说完全没用。字符文字已经是一个完整的字符串


但是您确实应该使用XML解析器。除非您的任务非常简单,并且您绝对确定不应该替换任何东西。

您可以使用repalce或replaceAll。无论如何,您必须使用此方法返回的值。该方法不会修改字符串本身,因为字符串类是不可变的。

您可以使用repalce或replaceAll。无论如何,您必须使用此方法返回的值。该方法不会修改字符串本身,因为字符串类是不可变的

<schema>cs/src/main/castor/document.xsd</schema>
xmlInStr.replaceAll(
   "src/main/castor/GridDocument.xsd",    
   "correspondenceCastor/src/main/castor/GridDocument.xsd"
); 
xmlInStr.replace("src/main/castor/GridDocument.xsd".toCharArray().toString(), "correspondenceCastor/src/main/castor/GridDocument.xsd".toCharArray().toString());