вот мой код:сравнения двух файлов посимвольно
public static void main(String[] args) {
Scanner console = new Scanner(System.in);
System.out.print("Type first file name to use: ");
String filename1 = console.nextLine();
System.out.print("Type second file name to use: ");
String filename2 = console.nextLine();
Scanner input1 = new Scanner(new File(filename1));
Scanner input2 = new Scanner(new File(filename2));
String s1 = input1.next();
String s2 = input2.next();
boolean similar=true;r
while(!input1.hasNext()&&!input2.hasNext()){
// this is where i am stuck. i need to compare the lines character by character, but i'm not sure how to do so. i can't use buffer method, or any really advanced methods since i am just a beginner, so sticking to the basic loops (while, iff, for..) is the only option i have
}
программа должна предложить пользователю ввести два имени файла и печатает истинным или ложным в зависимости от того или нет файлы имеют один и тот же contents.It должен проверять символ файлов по символу и игнорировать разницу (в верхнем и нижнем регистре) в случае символов, которые являются буквами. Спасибо.
Интересно, если бы вы могли Хэш файла и сравнить Hash, чтобы сэкономить много времени и накладных расходов. –
Предполагая, что у вас есть проблемы в строке, которую вы прокомментировали, ваш вопрос действительно «как мне сравнить две строки». В этом случае используйте equals: 'if (! Input1.next(). Equals (input2.next())) {/ * not-equal * /}'. Если вам действительно нужен char по char, используйте цикл для своих символов, извлеченный через, скажем, 'input1.next(). ToCharArray()' – tucuxi
@ user2860598: Хеширование требует перебора полного файла, поэтому в этом случае он менее эффективен , –