Java替换/删除/写入txt文件中某个位置的文本

时间:2016-07-24 20:51:59

标签: java

所以他们要编辑的文件就是这个,

require('request')

我想编辑的地方,以及从

删除文字
<?xml version="1.0" encoding="utf-16"?>
<UserSettingsXml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <AuthType>Google</AuthType> <!-- Google/Ptc -->
  <DefaultLatitude>425</DefaultLatitude> 
  <DefaultLongitude>5555</DefaultLongitude> 

我用Google搜索了一下但无法找到我要找的东西。

2 个答案:

答案 0 :(得分:0)

您尝试编辑的文件采用xml格式。做你想做的最好的方法是: 1.解析xml中的文件 2.操纵xml 3.再次构建文件

一个好的页面,在这里学习如何从文本转换为xml是这样的: http://www.mkyong.com/java/how-to-read-xml-file-in-java-dom-parser/

其余的更容易。我希望这会有所帮助。

答案 1 :(得分:0)

如果要更改XML文件,则应使用DOM

之类的内容

这比仅仅更改文件中的文本更容易,更安全。

将xml文件读入DOM - Document非常简单:

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder(); 
Document doc = db.parse(new File(filename));

之后,您必须在XML文档中找到正确的位置并进行更改:

Element root = doc.getDocumentElement();
NodeList found = root.getElementsByTagName("DefaultLatitude");
Node element = found.item(0);
String textContent = element.getTextContent();  // contains 425 now
element.setTextContent("987");                  // set new text

之后,您必须将已更改的文档写入文件:

TransformerFactory tranformerFactory = TransformerFactory.newInstance();
Transformer transformer = tranformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File(outputFile));
transformer.transform(source, result);

请注意,这只是一个如何读取,更改和保存XML文件的示例。要正确使用DOM,您必须阅读一些教程!