java - 复制字符串文件并更改一些文本

标签 java

我正在尝试读取文件内容,然后更改一些内部文本,然后复制到新位置。

在java 1.7下运行此代码,代码创建文件但无法用newName替换内部内容。

if (file.isFile()) {
    Charset charset = StandardCharsets.UTF_8;
    String content = new String(Files.readAllBytes(file.toPath()), charset);
    content.replaceAll("(?i)" + oldName, newName);
    String newFileName = file.getAbsolutePath().replace(oldName, newName);
    File newFile = new File(newFileName);
    newFile.getParentFile().mkdirs();
    newFile.createNewFile();
    Files.write(newFile.toPath(), content.getBytes());
}

最佳答案

字符串 content 不会被 replaceAll 函数更改。您必须将其返回值保存为新字符串并使用它。

关于java - 复制字符串文件并更改一些文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33451262/

相关文章:

java - DBCP 连接属性

java - 是否可以更改并非为支持依赖项注入(inject)而构建的闭源库中的错误类?

java - 删除和移动数组中的对象

java - 客户端请求Bucket信息的设计

java - 如何获取代理的 SSL key ?

在 Coldfusion 10 中使用 cfpop 时出现 java.security.spec.ECPublicKeySpec 错误

java - 从一个 JVM 读取另一个 JVM 的输入流

java - 如何在 Java 中进行没有副作用的编程?

java - 我在 Recycler View 中显示 Multiple Edit 文本。如何在按钮单击监听器上检查编辑文本的第一个到最后一个位置是否为空

java - 如何使用Stanford NLP Parser获取 "Grammatical Relation"?