с начала сделал сам, потом посмотрел чужой код, не тот не тот не работает правильно,не могу понять в как правильно написать задачу.
первый код и в консоли мой, второй подсмотрел
это мой код
public class Solution {
public static List<String> words = new ArrayList<String>();
static {
words.add("файл");
words.add("вид");
words.add("В");
}
public static void main(String[] args) throws IOException {
BufferedReader reader= new BufferedReader(new InputStreamReader(System.in));
String qq =reader.readLine();
reader.close();
FileReader fileReader=new FileReader(qq);
StringBuilder bilder=new StringBuilder();
while (fileReader.ready()){
int count=fileReader.read();
bilder.append((char)count);
}
int qw=0;
// System.out.println(bilder.toString());
Pattern pattern=Pattern.compile("\\b"+words+"\\b");
Matcher matcher=pattern.matcher(bilder);
while(matcher.find()){
qw++;
if (qw==2){
System.out.println(bilder);
qw=0;
}
}
}
}
этот подсмотрел
public class Solution {
public static List<String> words = new ArrayList<String>();
static {
words.add("файл");
words.add("вид");
words.add("В");
}
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String fileName = reader.readLine();
reader.close();
reader = new BufferedReader(new FileReader(fileName));
int count = 0;
String s;
while ((fileName = reader.readLine()) != null) {
s=fileName
String[] list = s.split("\\W");
// System.out.println(Arrays.asList(list));
for (String x : list) {
for (String y : words) {
if (x.equals(y)) {
count++;
}
}
}
if (count == 2) {
System.out.println(s);
count=0;
}else count=0;
}
reader.close();
}
}
package com.javarush.task.task19.task1922;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/*
Ищем нужные строки
*/
public class Solution {
public static List<String> words = new ArrayList<String>();
static {
words.add("файл");
words.add("вид");
words.add("В");
}
public static void main(String[] args) throws IOException {
BufferedReader reader= new BufferedReader(new InputStreamReader(System.in));
String qq =reader.readLine();
reader.close();
reader=new BufferedReader(new FileReader(qq));
String q=null;
while ((q=reader.readLine())!=null){
int count=0 ;
for (String word:words){
Pattern pattern=Pattern.compile("\\b"+words+"\\b");
Matcher matcher=pattern.matcher(q);
if (matcher.find())count++;
}if (count==2) System.out.println(q);
}reader.close();
}
}