Я бы хотел взять входной txt-файл любой длины, который выглядит примерно так
bob
joe
obb
oej
, и создать выходной txt-файл, который сортирует группы переупорядоченных слов в одной строке и по алфавиту в выходном текстовом файле.
bob obb
joe oej
Вот то, что я пытался до сих пор, где args[0]
- это файл с именем input.txt, переданный в командной строке.
public static void main(String[] args) {
File file = new File(args[0]):
Scanner scan = new Scanner(file);
List<char[]> anagrams = new ArrayList();
while (scan.hasNextLine()) {
Scanner scan2 = new Scanner(file);
String line = scan.nextLine();
char[] arr = line.toCharArray();
if (containsAnagram(anagrams, line))
continue;
else anagrams.add(line);
while (scan2.hasNextLine()) {
String line2 = scan2.nextLine();
if (isAnagram(arr, line2))
fileContent2+=” ”+line2;
}
fileContent+=fileContent2+”\n”;
}
}
private static boolean isAnagram(char[] arr, String line) {
for (int i=0; i<arr.length; i++) {
if (!Arrays.asList(line).contains(arr(i))
break;
if (i=arr.length-1)
return true;
}