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

Java在txt文件的某个位置替换/删除/写入文本,java,Java,他们说我要编辑的文件是 <?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 -->

他们说我要编辑的文件是

<?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> 

谷歌
425
5555
我想要编辑和删除文本的地方是

  <DefaultLatitude>425</DefaultLatitude> 
  <DefaultLongitude>5555</DefaultLongitude> 
425
5555

我在谷歌上搜索了一下,但找不到我要找的内容。

您试图编辑的文件是xml格式的。做你想做的事情的最好方法是: 1.用xml解析文件 2.操纵xml 3.重新生成文件

学习如何从文本转换为xml的一个好页面是:


其余的比较容易。我希望这能有所帮助。

如果您想更改XML文件,应该使用类似的方法

这比仅仅修改文件中的文本更容易、更安全


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

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,您必须阅读一些教程

花些时间看看Java教程中的一些XML解析。检查一下,还有一个问题:除了谷歌搜索,你还试过别的吗?比如,编写一些
Java
code?您仍然需要保存生成的文档。我会相应地编辑我的帖子