背景
背单词的时候,朋友搞了个单词本,用word的查询功能去掉了所有空格,然后单词和词性就连在一起了,就像这样:
markedadj.显著的,明显的
我想着利用IO流,里面写点儿小东西,实现辨认出词性,并分隔的方法,最终呈现这样的:
marked adj.显著的,明显的
这里面有空格的啊😀😀😀😀
另外,如果觉得单词和词性空格短,自己改改抽出来的方法那儿的空格数量就好了
关于IO流
这玩意儿我就不说了,太基础的东西了我这里用的是字符流,编码格式没有做配置,同志们如果瞧得起我,用了这段代码,记得把TXT的文件编码与IDEA的编码保持一致就行了,其他没啥交代的,废话不多说,直接上代码…
代码实现
package com.interest;
import java.io.*;
public class CopyUtils {
public static void main(String[] args) {
try {
BufferedReader br = new BufferedReader(new FileReader("C:\\Users\\Administrator\\Desktop\\source.txt"));
BufferedWriter bw = new BufferedWriter(new FileWriter("C:\\Users\\Administrator\\Desktop\\target.txt"));
String line;
while ((line = br.readLine()) != null) {
String lineNew = line;
if (line.contains(".")) {
String sFirst = line.split("\\.")[0];
String sFirstNew = null;
switch (sFirst){
case "\\.n":
}
if (sFirst.endsWith("n")) {
sFirstNew = getString(sFirst, "n");
} else if (sFirst.endsWith("v") && !sFirst.endsWith("adv")) {
sFirstNew = getString(sFirst, "v");
} else if (sFirst.endsWith("adj")) {
sFirstNew = getString(sFirst, "adj");
} else if (sFirst.endsWith("adv")) {
sFirstNew = getString(sFirst, "adv");
} else if (sFirst.endsWith("vt")) {
sFirstNew = getString(sFirst, "vt");
} else if (sFirst.endsWith("prep")) {
sFirstNew = getString(sFirst, "prep");
} else if (sFirst.endsWith("conj")) {
sFirstNew = getString(sFirst, "conj");
} else if (sFirst.endsWith("ad")) {
sFirstNew = getString(sFirst, "ad");
} else if (sFirst.endsWith("vi")) {
sFirstNew = getString(sFirst, "vi");
}
lineNew = sFirstNew;
for (int i = 1; i < line.split("\\.").length; i++) {
lineNew += line.split("\\.")[i];
}
if (sFirstNew == null) {
lineNew = line;
}
}
bw.write(lineNew);
bw.newLine();
}
br.close();
bw.close();
} catch (
IOException e) {
e.printStackTrace();
}
}
private static String getString(String sFirst, String suffix) {
String sFirstNew;
int length = sFirst.length();
String sWord = sFirst.substring(0, length - suffix.length());
sFirstNew = sWord + " " + suffix + ".";
return sFirstNew;
}
}
效果
source:
objectivenessn.客观,客观性
objectivityn.目的;目标;宗旨;n.客观性,客观现实
distrustvt.不信任;怀疑 n.不信任,猜疑;疑惑,不相信
mistrustedv.不信任( mistrust 的过去式和过去分词 )
trustn.(in)信任;责任;托拉斯 v.希望,信任
criticaladj.决定性的;苛求的;评论(性)的
criticallyadv.批判性地;苛求地;危急地;严重地
hypocriticaladj.虚伪的
criticizev.评论,评价;批评,批判
immediateadj.立即的;直觉的;目前的 adv.立即,立刻
target:
objectiveness n.客观,客观性
objectivity n.目的;目标;宗旨;n客观性,客观现实
distrust vt.不信任;怀疑 n不信任,猜疑;疑惑,不相信
mistrusted v.不信任( mistrust 的过去式和过去分词 )
trust n.(in)信任;责任;托拉斯 v希望,信任
critical adj.决定性的;苛求的;评论(性)的
critically adv.批判性地;苛求地;危急地;严重地
hypocritical adj.虚伪的
criticize v.评论,评价;批评,批判
immediate adj.立即的;直觉的;目前的 adv立即,立刻
ps
我估摸着我词性写的不够,也就打个样,反正抽出来方法了,谁愿意用,在判断里加上就好了,代码懒得优化了,一堆else if方便小白看,毕竟大神也用不到我这段代码,哈哈哈哈哈