Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
gvsp
13 / 2 / 0
Регистрация: 10.11.2015
Сообщений: 71
#1

Проверка существования файла - Программирование Android

02.12.2015, 03:03. Просмотров 1137. Ответов 6
Метки нет (Все метки)

Надо проверять наличие файла в директории, где программа создаёт файлы по умолчанию. Файл существует, но exists его не видит. А openFileInput из этого файла содержимое получает. Может exists требует прописывать путь в отличие от openFileInput, тогда как прописать путь, если файл создаётся с помощью openFileOutput?

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
String FILENAMEMusic = "MusicActiv.txt"; 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
// проверка существования файла которая не работает
      File file = new File(FILENAMEMusic);
       if(!file.exists()) {
        TextView hTextView = (TextView)findViewById(R.id.textView);
          hTextView.setText("файла нет");
       }
       else{
           TextView hTextView = (TextView)findViewById(R.id.textView);
         hTextView.setText("файл есть");
      }
 
// чтение из этого же файла, которое работает
        fIn = null;
        try {
            fIn = openFileInput(FILENAMEMusic);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        isr = new InputStreamReader(fIn);
        inputBuffer = new char[1]; // длина считываемой строки
        try {
            isr.read(inputBuffer);
        } catch (IOException e) {
            e.printStackTrace();
        }
        music_activ = new String(inputBuffer);
        activ_music = Integer.valueOf(music_activ);// в число
        if (activ_music == 1) { // если 1 включаем сервис
            startService(new Intent(this, MyService.class));
        }
    }
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2015, 03:03     Проверка существования файла
Посмотрите здесь:

Проверка существования файла - Программирование Android
Добрый день, как проверить файл на существование? ввожу так, приложение вылетает с ошибкой java.lang.NullPointerException File...

XmlPullParser - проверка существования атрибута - Программирование Android
Добрый день. Возникла необходимость проверять наличие в xml файле какого-либо атрибута. Подскажите метод, если таковой есть. В гугле и...

Проверка доступности файла по пути к файлу - Программирование Android
В своем приложении я использую файлы с SD карты. Так вот хотелось бы как-то проверить доступность файла (не был ли удален или перемещен в...

Android, Gradle: проверка параметра при отладке и сборке подписанного файла - Программирование Android
Приветствую, коллеги! Всем хорошего кода. В проекте есть переменная (класса), которая принимает два значения - true, false. true -...

Проверка существования файла - C++ Linux
Изложенная ниже функция в любом случае возвращает единицу. #include <fstream> bool FileExists(const char path) { return...

Проверка существования файла - Java SE
Здравствуйте. Подскажите пожалуйста. У меня в проекте есть класс Defer.java, мне нужно проверить, существует он или нет. String...

Проверка существования файла - C++
Всем привет! Как можно реализовать проверку существования файла (если файл не существует, то при чтении выдается ошибка, при а при записи...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dajver
408 / 272 / 18
Регистрация: 18.09.2010
Сообщений: 1,107
02.12.2015, 13:42     Проверка существования файла #2
нет, адрес получается из File, а он один на всех, может вы просто не верно указали адрес
Java
1
String FILENAMEMusic = "MusicActiv.txt";
тут? Может оно не в корне sdcard лежит, а где то глубже?
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
02.12.2015, 13:45     Проверка существования файла #3
к чему эти предвательные избыточные проверки?
openFileInput() если кинет исключение - ловим, значит файла нет, печалька, выводим тост
иначе - читаем из него
gvsp
13 / 2 / 0
Регистрация: 10.11.2015
Сообщений: 71
02.12.2015, 14:52  [ТС]     Проверка существования файла #4
dajver, Оно лежит там, куда сохраняет openFileOutput в котором путь не прописывается, а только имя файла. При этом openFileInput файл видит и читает, а exists не видит. Для поиска файла используют одну и ту же переменную 9 и 22 строки.

Добавлено через 8 минут
Паблито, А можно показать, куда можно дописать в openFileInput() действие при отсутствии файла?
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
02.12.2015, 15:05     Проверка существования файла #5
жесть
вот же ловится исключение
Java
1
2
3
} catch (FileNotFoundException e) {
            e.printStackTrace();
        }
можно примерно так, я на коленке копировал код
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
        try {
            FileInputStream fIn = openFileInput(FILENAMEMusic);
            InputStreamReader isr = new InputStreamReader(fIn);
            char[] inputBuffer = new char[1]; // длина считываемой строки
            isr.read(inputBuffer);
            music_activ = new String(inputBuffer);
            activ_music = Integer.valueOf(music_activ);// в число
            if (activ_music == 1) { // если 1 включаем сервис
                startService(new Intent(this, MyService.class));
            }
        } catch (IOException e) {
            // файла нет или он не читается по какой-то причине
            // либо подробнее разбираем сообщение об ошибке "е" либо вызываем метод с тостами
        }
gvsp
13 / 2 / 0
Регистрация: 10.11.2015
Сообщений: 71
02.12.2015, 15:16  [ТС]     Проверка существования файла #6
Паблито, Спасибо, попробую. Но почему не пашет exists() всё равно остаётся загадкой.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.12.2015, 15:28     Проверка существования файла
Еще ссылки по теме:

Проверка существования файла - Pascal ABC
Добрый вечер.Кто может отредактируйте код.Само задание: В исходном текстовом файле записаны строки, содержащие строчные и прописные...

Проверка существования файла - Visual Basic
Помогите дописать код: Private Sub Form_Load() If Shell("C:\33\notepad.exe") Then MsgBox ("Программа запущена успешно"),...

Проверка существования файла - C#
здравствуйте. подскажите пожалуйста, как лучше сделать такую штуку: заполняю GridView, нажимаю кнопку сохранить, и данные сохраняются в...

Проверка существования файла - VBA
Почему у меня fs - nothing ? Dim fs As Object ... Set FS = CreateObject('Scripting.FileSystemObject') If...

Проверка на существования файла - C++
Можно ли проверять файл на существование таким образом: ifstream file("file.txt"); if (file.is_open()) {} //Если файл...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
02.12.2015, 15:28     Проверка существования файла #7
Сообщение было отмечено автором темы, экспертом или модератором как ответ
потому что это разные методы, File надо подсовывать полный путь к файлу
если создаем файл так
Java
1
2
3
4
5
        try {
            openFileOutput("test.txt", MODE_PRIVATE);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
то проверять его существование надо так
Java
1
2
        File f = new File(getFilesDir() + "/test.txt");
        if (f.exists()) // файл есть
Yandex
Объявления
02.12.2015, 15:28     Проверка существования файла
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru