大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Java替换特殊字符的方法是什么?在本实例中为保证学生输入的 Java 文件名合格,将利用 StringBuffer 类实现对 Java 文件名中的特殊符号进行替换,包括将中文状态下的“。”和全角状态下的“.”替换为英文状态下的“.”。
顺城ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!
在本例实现过程中主要使用了 StringBuffer 类的字符查找和替换方法,实现用Java替换特殊字符代码如下:
import java.util.Scanner;
public class test2 {
public static void main(String[] args) {
System.out.println("请输入你要提交的Java文件名称:");
Scanner input = new Scanner(System.in);
String fileName = input.next(); // 获取用户输入的 java 文件名称
// 定义StringBuffer对象,字符串内容为用户输入的java文件名称
StringBuffer file = new StringBuffer(fileName);
// 获取英文状态下的"."是否存在
int index = file.lastIndexOf(".");
// 判断中文状态下的"。"和"."是否存在
int errIndex1 = file.lastIndexOf("。");
int errIndex2 = file.lastIndexOf(".");
if (index != -1 file.substring(index + 1, file.length()).equals("java")) {
System.out.println("作业提交成功!");
} else if (errIndex1 != -1 file.substring(errIndex1 + 1, file.length()).equals("java")) {
// 将中文状态下的"。"改为英文状态下的"."
file.setCharAt(errIndex1, '.');
System.out.println("你的书写有误,已改正为:" + file + "rn提交成功!");
} else if (errIndex2 != -1 file.substring(errIndex2 + 1, file.length()).equals("java")) {
// 将全角状态下的"."改为英文状态下的"."
file.setCharAt(errIndex2, '.');
System.out.println("你的书写有误,已改正为:" + file + "rn提交成功!");
} else {
System.out.println("你提供的java文件名称有误,请核实!");
}
}
}[page]
Java替换特殊字符的方法是什么?运行该用Java替换特殊字符程序,当用户录入的 Java 文件名称中的为中文状态的“。”和“.”时,修改为英文状态下的“.”,然后再进行提交,如下所示:
请输入你要提交的Java文件名称:
myexapmle。java
你的书写有误,已改正为:myexample.java
在该程序中,实现替换特殊字符步骤如下所示:
定义了一个 String 类型的变量,并赋值为用户输入的 Java 文件名称。
使用 StringBuffer 的 StringBuffer(String str) 构造函数将该变量的值作为 StringBuffer 对象的值。
获取用户输入字符串中(英文和中文)的位置。
使用多重 if 选择语句判断用户输入的字符串中是否包含英文状态下的,并且后面的字符串是否为“java”,如果条件成立,则表示用户输入的信息无误,提交成功。
在 else if 中判断用户输入的字符串中是否包含中文状态下的“。”和“.”,并且“。”和后面的字符串为“java”,如果判断通过,则调用 StringBuffer 类中的 setCharAt() 方法修改“。”为“.”,再提交。
本篇《Java替换特殊字符的方法是什么?这些内容才是做好Java必须会的》到这里就已经结束了,并不是所有的数据类型都可以指定直接数量,通常只有三种类型:原语、字符串和NULL,环球网校的小编祝您PHP学习之路顺利,如果你还想知道更多Java知识,那么可以点击本站的其他文章进行学习。
如何将字符串中的"\"替换成"\\":
String msgIn;
String msgOut;
msgOut=msgIn.replaceAll("\\\\","\\\\\\\\");
原因:
'\'在java中是一个转义字符,所以需要用两个代表一个。例如System.out.println( "\\" ) ;只打印出一个"\"。但是'\'也是正则表达式中的转义字符(replaceAll 的参数就是正则表达式),需要用两个代表一个。所以:\\\\被java转换成\\,\\又被正则表达式转换成\。
同样
CODE: \\\\\\\\
Java: \\\\
Regex: \\
将字符串中的'/'替换成'\'的几种方式:
msgOut= msgIn.replaceAll("/", "\\\\");
msgOut= msgIn.replace("/", "\\");
msgOut= msgIn.replace('/', '\\');
将字符串中的'\'替换成'/'的几种方式:
msgOut= msgIn.replaceAll("\\\\","/");
msgOut= msgIn.replace("\\","/");
我首先说下思路吧,你想更改文件中的字符串,首先你要使用java中的io把文件里面的内容全部读到一个字符串当中,然后对这个字符串进行查找替换的操作,最后在把你更改之后的这个字符串写进文件当中,当然是覆盖掉这个文件。
这里我就用到FileOutputStream FileInputStream BufferedReader PrintWriter
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
try {
File file = new File("c:\\abc.txt");
// 建立一个file对象,参数就是你想访问文件的路径,这里我就不验证文件是否存在了
// 查下api即可
BufferedReader br = new BufferedReader(new InputStreamReader(
new FileInputStream(file)));
List list =new ArrayList();
//定义一个集合存放每一行的字符串
while(true){
String str=br.readLine();
//读取文件当中的一行
if(str==null) break;
//如果读取的是空,也就是文件读取结束 跳出循环
int index=str.indexOf("zhidao");
//看此行的是否包含zhidao
if(index!=-1){
str.replace("zhidao", "answer");
//如果包含就把zhidao 换成answer
}
list.add(str);
//把修改之后的str放到集合当中
}
br.close();
PrintWriter pw=new PrintWriter(file);
//建立一个输出流,把东西写入文件
for(int i=0;ilist.size();i++){
String str =(String)list.get(i);
//从集合当中取出字符串
pw.println(str);
//把该字符串写入文件当中
}
pw.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}