package com.javarush.task.task15.task1525;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/*
Файл в статическом блоке
*/
public class Solution {
public static List<String> lines = new ArrayList<String>();
static {
try {
File file = new File(Statics.FILE_NAME);
Scanner scanner = new Scanner(file);
while (scanner.hasNextLine()){
lines.add(scanner.nextLine());
} scanner.close();
} catch (FileNotFoundException fe){
}
}
public static void main(String[] args) {
System.out.println(lines);
}
}
package com.javarush.task.task15.task1525;
public class Statics {
public static String FILE_NAME = "C:\\Users\\Yan\\Desktop\\фильмы.txt";
}
В этом текстовике у меня список фильмов, но вывод программы : [ ]Yan
16 уровень
Задача прошла валидацию, но файл не прочитала.
Решен
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
IceBergMaster
20 декабря 2019, 22:19
Это в отдельном файле, или как?
Если пустой, значит в названии файла ошибка.
Ну или файл пустой (то что в нём что-то написано, ещё не означает, что это сохранено)
0
Yan
20 декабря 2019, 22:25
Да, этот класс в отдельном файле
Файл правда не пустой, он старый и там давно сохранены несколько фильмов, каждый с новый строки
Название без ошибок
0
IceBergMaster
20 декабря 2019, 22:34решение
Ах кириллица, попробуй
+2
Yan
20 декабря 2019, 22:39
Cпасибо, сработало! Но почему нужен этот charset?
Нельзя просто так читать кириллицу? или именно название файла на кириллице является проблемой?
0
IceBergMaster
20 декабря 2019, 23:02полезный
Да проблема в самом блокноте, там же для русскоязычной винды используется Windows-1251, она же CP1251, и она же ANSI.
Работай с файлами прямо в Idea, или на крайняк в каком-то редакторе типа Нотпада++, где хоть можно явно указать UTF-8.
+1