【分析】
说一下主要思路:
将每个单词(包括句号)进行处理(用rec记录)
当读到空格的时候若rec存储的“单词”首字母为小写且末尾为句点 则标记判断大小写的flag为true,接下来就可以转换大小写,否则不转换
import java.io.*;
public class GrammarChecker {
public static void main(String[] args){
try {
BufferedReader in=new BufferedReader(new FileReader(".txt"));//待改文章
BufferedWriter writer=new BufferedWriter(new FileWriter(".txt"));//输出文章
int temp;
String rec="";
boolean flag=true; //判斷是否要小寫轉換爲大寫
while ((temp=in.read())!=-1){
if(temp=='\n')
writer.write('\n');
else if(temp>='a' && temp<='z'){
if(flag)
writer.write(temp-'a'+'A');
else {
writer.write(temp);
rec+=(char)temp;
}
flag=false;
}
else if(temp>='A' && temp<='Z'){
writer.write(temp);
rec+=(char)temp;
flag=false;
}
else if(temp=='.'){
writer.write(temp);
rec+='.';
}
else if(temp==' '){
writer.write(temp);
char head,tail;
head=rec.charAt(0);
tail=rec.charAt(rec.length()-1);
if(head>='a' && head<='z' && tail=='.')
{
flag=true;
}
//System.out.println(rec);
rec="";
}
else{
writer.write(temp);
}
}
in.close();
writer.close();
}
catch (IOException e){
System.out.println("No this file");
}
}
}
本文介绍了一个简单的语法检查器实现方案,该方案通过读取文本文件并处理其中的每个单词及句号来确保句子首字母的大写正确性。通过标志位控制大小写转换,实现了基本的文本格式校正。
946

被折叠的 条评论
为什么被折叠?



