替换文本:将文本文件中的所有src替换为dst
题意:
将文本文件中的所有src替换为dst
方法一:使用String
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Scanner; public class Demo2 {
public static void main(String[] args) throws FileNotFoundException {
// 使用Scanner处理文本
Scanner sc = new Scanner(new File("ddd.txt")); // 文件可能不存在,所以要声明异常
String passage = ""; while(sc.hasNextLine()) // 把ddd.txt的内容保存到passage字符串中
passage += sc.nextLine() + "\n"; // nextLine()中不包含回车 // 把ddd.txt中的src替换为dst
String src = "Hello";
String dst = "World";
passage = passage.replace(src, dst); // 注意replace()方法的返回值
// 使用PrintWriter写入文本
PrintWriter pw = new PrintWriter("ddd.txt");
pw.print(passage); // 将替换后的文本写回ddd.txt (覆盖写) pw.close(); // 记得关流,不然数据写不进去
}
}
方法二:使用StringBuffer
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Scanner; public class Demo {
public static void main(String[] args) throws FileNotFoundException {
// 使用Scanner处理文本
Scanner sc = new Scanner(new File("ddd.txt")); // 文件可能不存在,所以要声明异常
StringBuffer sb = new StringBuffer();
while(sc.hasNextLine()) {
sb.append(sc.nextLine()); // nextLine()中不包含回车
sb.append('\n');
} // 把sb中的src替换为dst
String src = "static";
String dst = "Hello";
int index = sb.indexOf(src); // 找到src第一次出现的位置
int end;
while(index != -1) {
end = index + src.length();
sb.replace(index, end, dst); // 用dst替换src字符串
index = sb.indexOf(src, end); // 从end开始,可以避免不必要的扫描
}
// 使用PrintWriter写入文本
PrintWriter pw = new PrintWriter("ddd.txt");
pw.print(sb.toString()); // 将替换后的文本写回ddd.txt (覆盖写) pw.close(); // 记得关流,不然数据写不进去
}
}
替换文本:将文本文件中的所有src替换为dst的更多相关文章
- PyCharm中批量查找及替换
选中需要操作的字符 Ctrl + R 替换 Ctrl + Shift + F 全局查找 Ctrl + Shift + R 全局替换 源自: PyCharm中批量查找及替换 - Ella_Wu - 博客 ...
- 文件6. 查找替换.txt文本文件中的内容
servlet实现对文本文件的查找替换 .jsp界面 <form> <table> <tr> <td>选择文本文件:</td> <td ...
- C# 在word中查找及替换文本
C# 在word中查找及替换文本 在处理word文档时,很多人都会用到查找和替换功能.尤其是在处理庞大的word文档的时候,Microsoft word的查找替换功能就变得尤为重要,它不仅能让我们轻易 ...
- C# 替换文本文件中的某一行
C# 替换文本文件中的某一行 (要求此文件存在) /// <summary> /// LineIndex 表示新的内容所在的行位置 /// </summary> /// < ...
- linux中批量替换文本中字符串--转载
(一)通过vi编辑器来替换.vi/vim 中可以使用 :s 命令来替换字符串.:s/well/good/ 替换当前行第一个 well 为 good:s/well/good/g 替换当前行所有 well ...
- bat批处理 查找替换:批处理如何查找并替换文本里特定字符串中的部分内容
批处理如何查找并替换文本里特定字符串中的部分内容 摘自:http://www.bathome.net/thread-43349-1-1.html 脚本如下: @if()==() echo off &a ...
- NX二次开发-将信息窗口中的文本保存到文本文件中UF_UI_save_listing_window
#include <uf.h> #include <uf_ui.h> UF_initialize(); //打开信息窗口 UF_UI_open_listing_window() ...
- Java 添加、删除、替换、格式化Word中的文本(基于Spire.Cloud.SDK for Java)
Spire.Cloud.SDK for Java提供了TextRangesApi接口可通过addTextRange()添加文本.deleteTextRange()删除文本.updateTextRang ...
- linux下批量查找/替换文本内容
一般在本地电脑上批量替换文本有许多工具可以做到,比如sublime text ,但大多服务器上都是无图形界面的,为此收集了几条针对linux命令行 实现批量替换文本内容的命令: 1.批量查找某个目下文 ...
随机推荐
- Servlet与Struts的区别
启动: ● Servlet:无 ● Struts:配置filter,设置struts入口 创建: ● Servlet:继承HttpServlet,重写doGet与doPost方法: 添加注解或配置we ...
- Python学习day08-python进阶(2)-内置方法
Python学习day08-python进阶(2)-内置方法 列表数据类型内置方法 作用 描述多个值,比如爱好 定义方法 xxxxxxxxxx 2 1 hobby_list ...
- Python学习day06-Python基础(4)流程控制之while和for循环
Python学习day06-流程控制之while和for循环 Python学习day06-流程控制之while和for循环while循环1. 语法2. while+break,while+contin ...
- <随便写>佛祖,哈哈!
print(" _ooOoo_ ") print(" o8888888o ") print(" 88 . 88 ") print(" ...
- 看了这么N多天DELPHI,突然我有个感觉
感觉DELPHI很像Win32汇编 语法上不谈,就编写格式.形式上,很像 delphi的一个函数 procedure TForm1.btn1Click(Sender: TObject);beg ...
- CAS增加免登陆(Remember Me)功能
1. 打开deployerConfigContext.xml 在 authenticationManager 的bean中增加 <property name="authenticati ...
- 廖雪峰Java10加密与安全-3摘要算法-1MD5
1.摘要算法 1.1 摘要算法(哈希算法/Hash/数字指纹): 计算任意长度数据的摘要(固定长度) 相同的输入数据始终得到相同的输出 不同的输入尽量得到不同的输出 1.2 摘要算法目的: 验证数据和 ...
- 阿里云 Aliplayer高级功能介绍(七):多分辨率
基本介绍 网络环境比较复杂.网速不稳定,Aliplayer提供了多分辨率播放的模式,用户可以手工切换分辨率和播放器选择最优分辨率,基本UI如下: Source模式 source的方式指定多个清晰度的地 ...
- C++继承相关知识点总结
1:派生类继承基类的成员并且可以定义自己的附加成员.每个派生类对象包含两个部分:从基类继承的成员和自己定义的成员. 每个派生类对象都有基类部分,包括基类的private成员.类可以访问共基类的publ ...
- spring中关于<context:component-scan>的使用说明
通常情况下我们在创建spring项目的时候在xml配置文件中都会配置这个标签,配置完这个标签后,spring就会去自动扫描base-package对应的路径或者该路径的子包下面的java文件,如果扫描 ...