如何用java程序提取两个文本中相同的字符串 10

 我来答
我是谁我在哪我要干什么呢
推荐于2018-04-12 · TA获得超过560个赞
知道小有建树答主
回答量:350
采纳率:100%
帮助的人:374万
展开全部
你的意思是不是从两个txt中提取出相同的字符串?看看下面代码:从当前工作目录下有1.txt和2.txt提取出它们相同的子字符串。
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashSet;
public class Test{
public static String read(File file){
String string="";
InputStreamReader isr;
try {
isr = new InputStreamReader(new FileInputStream(file));
BufferedReader br=new BufferedReader(isr);
int i=0;
while(true){
i=br.read();
if(i!=-1)
string=string+String.valueOf((char)i);
else break;
}
br.close();
} catch (IOException e) {
e.printStackTrace();
}
return string;
}
public static HashSet<String> sameSubString(String s1,String s2){

ArrayList<String> sub1 = new ArrayList<String>();//保存s1的子串
ArrayList<String> sub2 = new ArrayList<String>();//保存s2的子串
HashSet<String> result = new HashSet<String>();//保存相同的子串

//求s1的子串
for(int i = 1;i<s1.length();i++){
for(int j = 0;j<=s1.length()-i;j++){
sub1.add(s1.substring(j,j+i));
}
}

//求s2的子串
for(int i = 1;i<s2.length();i++){
for(int j = 0;j<=s2.length()-i;j++){
sub2.add(s2.substring(j,j+i));
}
}

System.out.println("\"AABBC\"的子串 : " + sub1);
System.out.println("\"ABBCC\"的子串 : " + sub2);

for(String s: sub1)
if(sub2.contains(s))
result.add(s);

for(String s: sub2)
if(sub1.contains(s))
result.add(s);

return result;
}
public static void main(String[] args) throws IOException {
File file=new File("1.txt");
String s1=Test.read(file);
System.out.println(s1);
file=new File("2.txt");
String s2=Test.read(file);
System.out.println(s2);
HashSet<String> result=Test.sameSubString(s1, s2);
System.out.println("相同的子串 : " + result);

}

}
有什么疑问hi我或追问。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
3009447
2012-05-01
知道答主
回答量:76
采纳率:0%
帮助的人:13.3万
展开全部
定义JTextField field=new JTextField();
String textfield=field.getText();就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
凯琳kay
2012-05-03 · TA获得超过132个赞
知道答主
回答量:116
采纳率:100%
帮助的人:43.6万
展开全部
用subString看看!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式