Я допомагаю сестрам простою програмою javaі я наткнувся. Вони лише вивчили класи сканерів для читання вмісту файлів, тому я думаю, що вони повинні використовувати клас сканера. Кожен рядок містить букви та потенційно порожній пробіл, і ми сподіваємось зберегти кожен рядок у масиві. Це працює добре і денді, поки один із рядків не містить щось подібне:
abcde f (порожній пробіл після f слід читати як частину рядок).
Однак scanner.nextLine()
схоже, не враховує цього останнього порожнього місця. Я подумав, що можу встановити роздільник для сканера n
подобається так:
scanner.useDelimiter("n")
а потім використовувати scanner.Next()
звідти, але це все ще не працює. Я поглянув і поглянув на декілька запитань, що стосуються stackoverflow. Здається, це питання дозволяє зробити висновок, що це не легко зробити з класом сканера: Як читати пробіли за допомогою Scanner.next ()
Будь-які ідеї? Я відчуваю, що там є легкий шлях, який я випускаю.
Ось як я читаю в рядках:
While(scanner.hasNextLine(){
String nextLine = scanner.nextLine();
Використовуючи наведений вище приклад, мій рядок буде прочитаний abcde f
. Це позбудеться порожнього простору наприкінці. Я також намагався використовувати hasNext
і next
. Вибачте від мого форматування, я редагую по телефону.
Відповіді:
2 для відповіді № 1Збережіть свій текстовий файл у вигляді кодування ANSI і повторіть спробу.
По праву scanner.nextLine()
захопить все в рядку, включаючи пробіл.
scanner.next()
не буде захоплювати пробіли, як роздільник пробіл за замовчуванням.